Przykłady integracji WEBCON BPS z usługami REST dla Salesforce i Dynamics

Facebooktwitterpinterestlinkedinmail
dotyczy wersji 2016.1.x; autor: Karol Woźniak

W wersji WEBCON BPS 2016 dodane zostały funkcjonalności umożliwiające prostą integrację z zewnętrznymi dostawcami usług sieciowych. Integracja jest możliwa poprzez wykorzystanie API (ang. application programming interface) udostępnionych przez zewnętrznych dostawców.

Od strony platformy WEBCON BPS użycie API odbywa się dwojako:

  • poprzez źródła danych – dane pobrane z zewnętrznego systemu mogą zostać wykorzystane na formularzu np. w atrybucie typu Pole wyboru
  • poprzez wywołanie akcji – dane wprowadzone na formularzu mogą posłużyć do wykonania operacji na zewnętrznym systemie np. utworzenia konta w Dynamics CRM bazując na informacjach wprowadzonych na formularzu

Scenariusz biznesowy

Dla procesu Zarządzania firmowymi kontaktami (kontrahenci, zewnętrzni konsultanci/eksperci, dostawcy etc.) potrzebujemy:

  • możliwości automatycznego utworzenia kont w systemach Dynamics CRM i SalesForce dla nowo dodawanych kontaktów (np. na przejście ścieżką), bazując na wprowadzonych na formularzu danych
  • możliwości wybrania w Polu wyboru istniejących kont z systemów Dynamics CRM i SalesForce i wypełnienia danymi pól formularza w celu użycia ich

Scenariusz obrazuje dwustronną komunikację z/do zewnętrznego systemu.

Poniżej została przedstawiona konfiguracja umożliwiająca osiągnięcie w/w celów w kontekście API Dynamics CRM i SalesForce.
Szczegóły dotyczące samej konstrukcji zapytania związane są ze znajomością dokumentacji API zewnętrznych dostawców oraz działania żądań protokołu HTTP i nie będą tu wyjaśniane.

 

Konfiguracja źródła danych REST

Źródła danych typu REST można podzielić ze względu na swoją konfigurację na trzy obszary:

  • Ustawienia połączenia do Web Service`u
  • Ustawienia żądania HTTP z wykorzystaniem metod GET/POST/PUT/PATCH/DELETE i ewentualną treścią zapytania w formacie JSON
  • Ustawienia odpowiedzi Web Service`u tj. wybór kolekcji danych, która zostanie użyta np. w atrybutach formularza

Scenariusz działania źródła danych

Zostanie dodane źródło, które zwracać będzie wszystkie konta utworzone w systemie SalesForce. Ze względu na dużą liczbę własności obiektów Account wybrane dodatkowo zostaną tylko kolumny „AccountNumber”, „Name”, „Description”, „Phone”, „AnnualRevenue”.

Źródło zostanie następnie podpięte pod atrybut typu Pole Wyboru tak by ten ustawiał inne atrybuty zwróconymi wartościami (ten punkt będzie pominięty w poniższej konfiguracji).

Konfiguracja źródła danych dla API SalesForce – pobieramy wszystkie konta z systemu

 

Konfiguracja źródła danych – wskazanie zasobu, z którego zostaną pobrane dane oraz zawężenie wyniku do konkretnych kolumn obiektu Account

Dla źródeł danych najczęściej wykorzystywaną metodą protokołu HTTP jest GET. Źródła zwykle wykorzystywane są do przechowywania danych, które wykorzystywane są na formularzu np. w polach wyboru lub różnego rodzaju raportach (Tabela SQL, Wykres etc.).

Użycie źródła danych REST na formularzu – pole Autocomplete agreguje dane zwrócone przez API SalesForce i propaguje je na inne pola formularza

Konfiguracji wywołania akcji REST

 

Akcje wywołania API można podzielić ze względu na konfigurację podobnie jak źródła danych, tym razem na cztery obszary:

  • Autentykacja – wybór źródła danych, którego ustawienia połączenia zostaną wykorzystane lub wprowadzenie tych ustawień explicite w samej akcji
  • Dane żądania – URL do danego zasobu (ang. Resource) API, wybór metody protokołu HTTP oraz ustawienie ewentualnych niestandardowych nagłówków
  • JSON – dla metod POST/PUT/PATCH zwykle konieczne jest zdefiniowanie tzw. ciała żądania (ang. body request)
  • Odpowiedź – dane zwracane przez API można w łatwy sposób przypisać do konkretnych atrybutów lub list pozycji i jej kolumn

Scenariusz działania pierwszej akcji

Zostanie dodana akcja tworząca nowe konto w systemie SalesForce. Akcja wykonywać się będzie po wybraniu odpowiedniej ścieżki przejścia. Zbierze wartości wprowadzone do pól formularza w zakładce „Salesforce” i na ich podstawie wygeneruje nowy obiekt w zewnętrznym systemie.

 Akcja REST I – konfiguracja ustawień autentykacji z wykorzystaniem stałych procesowych przechowujących faktyczne wartości

 

Akcja REST II – wybór metody HTTP oraz wskazanie zasobu API, w którym chcemy utworzyć nowy obiekt – tutaj z wykorzystaniem stałej procesowej przechowującej faktyczną wartość

 

Akcja REST III – ciało żądania w formacie JSON zawierające dane, na podstawie których utworzony zostanie nowy obiekt (tu: konto w SalesForce)

Użycie akcji – zostały wprowadzone dane do pól formularza w zakładce SalesForce, następnie wybrana ścieżka „Save to SalesForce” uruchamiająca w tle akcje tworzącą nowe konto z użyciem API

Efekt użycia akcji – utworzone nowe konto w systemie SalesForce, z danymi wprowadzonymi na formularzu

Scenariusz działania drugiej akcji

Zostanie dodana akcja pobierająca na żądanie (przycisk w menu) dane o ostatnich pięciu dodanych kontach w systemie DynamicsCRM i zapisująca odpowiedź API do listy pozycji na formularzu.

 

Akcja REST I – autentykacja w ramach platformy Dynamics CRM, analogicznie do punktu 1 dla w/w akcji SalesForce

Akcja REST II – wybór metody HTTP oraz wskazanie zasobu API. Dodatkowo w raz z zapytaniem odfiltrowującym ostatnie 5 kont i zwracających wybrane kolumny dla tych obiektów

Akcja REST III – wybór mapowań dla zwróconych przez API danych. Wskazywane są atrybuty, do których zapisane zostaną wybrane dane (tutaj: lista pozycji i odpowiednie kolumny na formularzu)

Użycie akcji – po wywołaniu akcji na przycisk w menu dane z API Dynamics CRM zostają zapisane do listy pozycji