Metody integracji BPS – MS Dynamics (w tym D365)

Facebooktwitterpinterestlinkedinmail
Dotyczy wersji 2021.1.x i powyżej, autor: Martyna Krzyżak

Dla aplikacji stworzonych w WEBCON BPS często zachodzi potrzeba ich integracji z systemami zewnętrznymi. Jednym z popularnych systemów, który trzeba zintegrować z obiegami WEBCON BPS jest Microsoft Dynamics.

Scenariusze biznesowe

Poniżej zostały zaprezentowane przykładowe obszary połączenia systemu Microsoft Dynamics z WEBCON BPS.

Faktura kosztowa

Często miejscem styku systemu Microsoft Dynamics i WEBCON BPS jest obieg Faktur kosztowych. Z systemu Microsoft Dynamics pobierane są w tym przykładzie dane do słowników, np.

  • Kontrahenci
  • Konta bankowe
  • Waluty
  • Kategorie kosztu
  • MPK
  • Projekty

Do systemu Microsoft Dynamics wysyłane są natomiast dane opracowywanej faktury: dane nagłówkowe, jak numer faktury, data wystawienia oraz rozbicie analityczne. Zazwyczaj mamy tez możliwość przesłania do Microsoft Dynamics korekty faktury.

Kontrahenci

Podczas rejestracji faktury może się okazać, że w bazie Microsoft Dynamics brak kontrahenta wystawiającego daną fakturę. W takich przypadkach najczęściej umożliwiane jest automatyczne dodanie nowego kontrahenta w Microsoft Dynamics z poziomu obiegu przy pomocy integracji.

Faktura sprzedażowa

Kolejnym przykładem powiązania systemu Microsoft Dynamics z WEBCON BPS będą Faktury sprzedażowe. Po stronie obiegu można stworzyć i zaakceptować dokument, a następnie wysłać jego dane do systemu Microsoft Dynamics.

Zamówienia

Pobranie danych zamówień z Microsoft Dynamics wraz z ich kwotą może być potrzebne do weryfikacji ich rozliczenia. Pobierając takie dane do systemu WEBCON BPS można porównywać kwoty zamówień z przypisanymi do nich fakturami.

Oczywiście to nie koniec możliwych miejsc do integracji systemów Microsoft Dynamics i WEBCON BPS. Innym przykładem może być np. obieg Delegacji, bądź może mniej oczywista aplikacja Kancelarii. W obiegach Korespondencji wychodzącej i przychodzącej można skorzystać z listy kontrahentów z systemu Microsoft Dynamics podczas wskazywania Nadawcy/Odbiorcy.

Metody integracji

Integracja systemów Microsoft Dynamics z WEBCON BPS może się odbywać na kilka sposobów. Rodzaj wybranego rozwiązania zazwyczaj różni się w przypadku pobierania i wysyłania danych do systemu Microsoft Dynamics.

Pobieranie danych z Microsoft Dynamics

Dane słownikowe z Microsoft Dynamics, np. słownik Kontrahentów są zazwyczaj udostępniane do obiegu w formie widoków SQL sięgających do bazy systemu Microsoft Dynamics. Dzięki takiemu rozwiązaniu dane słownikowe dostępne w obiegu są zawsze aktualne, odświeżane na bieżąco po dokonaniu zmian w systemie Microsoft Dynamics.

Dane mogą również zostać udostępnione innymi sposobami, np. w formie WebService. Czasem zdarza się także, np. z powodu ilości danych, zasobów, że dane słownikowe są udostępnia z systemu Microsoft Dynamics w formie tabel MS SQL, które są uzupełniane i aktualizowane w określonym cyklu, np. raz na dobę, w nocy. Takie rozwiązanie ma swoje minusy – dane wprowadzane do Microsoft Dynamics są widoczne z opóźnieniem, ale czasem priorytetem jest mniejsze obciążanie zasobów systemu.

Poniżej przykład danych jakie może zawierać słownik Kontrahentów i ich numerów rachunków (te słowniki się zawężają).

Słownik Kontrahentów

Kolumna Typ danych Uwagi
ID int Kolumna z wartościami unikalnymi
Nazwa string  
Kod string Nazwa skrócona kontrahenta
NIP string Należy uważać, aby był w jednakowej formie
Kod pocztowy string  
Miejscowość string  
Adres string  
Państwo string  
Warunki płatności int Dodatkowe informacje na temat domyślnych parametrów płatności

 

Słownik Rachunków bankowych

Kolumna Typ danych Uwagi
ID int Kolumna z wartościami unikalnymi dla dostawcy
ID Kontrahenta int Kolumna po której zostaną zawężone konta bankowe dla danego dostawcy (wartość z kolumny ID ze słownika Kontrahentów)
Numer rachunku string  
Domyślne bool Dodatkowa kolumna pozwalająca wskazać numer, który ma się podpowiedzieć, jeśli dany kontrahent ma ich więcej niż jeden

 

Widok słownika Kontrahentów skonfigurowanego w WEBCON BPS

Wysyłanie danych do Dynamics

Dla operacji wpisu danych do systemu Microsoft Dynamics jest dostępne kilka opcji wykonania tego powiązania. Można to zrobić poprzez WebService: REST bądź SOAP. Takie rozwiązanie jest rozwiązaniem synchronicznym, więc wybierając je, odpowiedź o statusie wysyłki danych jest przesyłana bezzwłocznie. WebService REST jest rekomendowaną metodą integracji z Microsoft Dynamics.

Innym sposobem integracji omawianych systemów jest wpis za pomocą tabel buforowych, które są uzupełniane na podstawie udostępnionych z systemu WEBCON BPS widoków SQL z danymi z obiegów. Po przetworzeniu wiersza z danym elementem przez Microsoft Dynamics, w jednej z kolumn zwracany jest status jego wpisu i ewentualnie komunikat zwrotny, np. w przypadku błędu. Ta metoda wymaga po stronie obiegu cyklicznej obserwacji czy dany element został już poprawnie przeniesiony do systemu Microsoft Dynamics.

Realizacja wpisu może się różnić w zależności od konkretnej konfiguracji systemu Microsoft Dynamics oraz aplikacji WEBCON BPS w danej organizacji. Dla przykładu wysyłkę danych faktury do Microsoft Dynamics można rozdzielić na dwa wywołania WebService: pierwszy otwierający arkusz, a drugi już wpisujący do niego konkretne dane albo też pierwszy wpisujący dane nagłówkowe, a drugi aktualizujący wpis o rozbicie analityczne. Oczywiście najprostszym wariantem jest wykonanie całego wpisu podczas jednego wywołania, ale czasem takie rozdzielenie jest konieczne, a jego realizacja nie ma zazwyczaj wpływu na pracę użytkowników aplikacji WEBCON BPS.

 

Poniżej przykład danych dla prostego wpisu faktury.

Nagłówek

Parametr Typ danych Uwagi
ID WEBCON int  
Nr dokumentu string Sygnatura z WEBCON w celu łatwego parowania dokumentu między systemami
Data wpływu date  
Data wystawienia date  
Data sprzedaży date  
Nr faktury string  
ID kontrahenta int ID ze słownika Kontrahentów
ID rachunku bankowego int ID ze słownika Rachunków bankowych
Forma płatności int ID ze słownika Forma płatności
Termin płatności date  
Kwota netto decimal Kwota w walucie
Kwota brutto decimal Kwota w walucie
Kod waluty string Kod z NBP

 

Rozbicie analityczne

Parametr Typ danych Uwagi
MPK string Wartość ze słownika MPK
Kategoria string Wartość ze słownika Kategorii
Kwota netto decimal Kwota w walucie
Kwota brutto decimal Kwota w walucie
Kod waluty string Kod z NBP
Opis string Opis danej pozycji

 

Parametry zwracane

Parametr Typ danych Uwagi
Status string Informacja czy wpisano poprawnie, np. 0-sukces, 1-błąd
ID dokumentu string Przy poprawnym wpisie zwracany jest ID wpisanego dokumentu w Microsoft Dynamics
Komunikat decimal W przypadku braku powodzenia zwracany jest komunikat błędu

 

 

Konfiguracja powyższego wpisu WS REST w WEBCON BPS