Projektowanie systemu workflow przy
użyciu narzędzia BizAgi Studio
Część 6
Integracja z systemem zewnętrznym
Instytut Systemów Informatycznych, Wydział Cybernetyki, Wojskowa Akademia Techniczna
Paweł Mieteo, Jarosław Koszela
Integracja z systemem zewnętrznym
Po utworzeniu systemu zewnętrznego przystąpimy do skonfigurowania projektu w BizAgi Studio, tak
aby workflow mógł wysyład komunikaty do aplikacji zewnętrznej oraz mógł z niej pobierad dane.
Rysunek 1. BizAgi Studio - wejście w tryb definiowania interfejsu integracji
Aby przejśd do narzędzia za pomocą, którego będziemy mogli zdefiniowad integracje z systemami
zewnętrznymi klikamy na opcję „Define Integration Interfaces”.
Na aktywności „Pobieranie informacji o studencie” dodamy odwołanie do naszego serwisu
zewnętrznego, tak aby pobrad ilośd punktów ECTS. W tym celu klikamy na daną aktywnośd.
Rysunek 2. Definiowanie interfejsu - krok 1
BizAgi Studio otworzy kreator za pomocą, którego skonfigurujemy interfejs. W polu URL podajemy
adres usługi sieciowej, z której chcemy wywoład metodę zdalną. Podajemy adres WebSerwisu
aplikacji, którą stworzyliśmy w poprzedniej części. Należy pamiętad aby usługa była uruchomiona, w
tym celu w Visual Studio należy wcisnąd Carl+F5. Po wciśnięciu przycisku GO pokaże się lista
dostępnych metod. Wybieramy metodę PobierzPunktyEcts i przechodzimy dalej.
Rysunek 3. Definiowanie interfejsu - krok 2
W drugim kroku wskazujemy, które dane z workflow mają zostad załadowane, jako parametry
wejściowe do metody. Robimy to metodą drag and drop. W naszym przypadku łapiemy za trójkącik
przy numerze indeksu i przeciągamy na parametr wejściowy wywoływanej metody.
Rysunek 4. Definiowanie interfejsu - krok 3
W kolejnym kroku możemy stworzyd przypisanie dla wartości zwracanej przez wywoływaną metodę.
Jej wynikiem jest liczba punktów ECTS, więc łączymy z polem PunktyECTS.
Rysunek 5. Definiowanie interfejsu - krok 4
W ostatnim kroku możemy zdefiniowad akcję w przypadku błędów wywołanie, oraz zdefiniowad
warunki, przy których błąd ma się wygenerowad. Zostawiamy ustawienia domyślne i kooczymy
proces definiowania interfejsu.
Drugą interakcję z systemem zewnętrznym będzie dodanie do systemu zewnętrznego nowej opłaty,
tak aby użytkownik systemu zewnętrznego mógł zdalnie uruchomid zdarzenie pośrednie „Wpłynięcie
pieniędzy”. Nie jest możliwe dodanie odwołania do usługi sieciowej na elemencie zdarzenia
pośredniego w sekcji definiowania interfejsów. Należy przejśd do obszaru definicji zdarzeo.
Rysunek 6. Skrót do zmiany obszaru pracy
W prawym górnym rogu okna znajduje się lista rozwijana, załomocą której możemy w szybki sposób
zmieniad obszary pracy w BizAgi Studio. Przejdźmy do „Activity Action”. Następnie na zdarzeniu
„Wpłynięcie pieniędzy” na akcji wejścia dodajmy nowe Expression.
Rysunek 7. Dodanie odwołania do usługi sieciowej w Expression
Na strzałce łączącej początek i koniec wyrażenia używając menu kontekstowego wybieramy opcję
„Add Web Service”.
Rysunek 8. Nadanie nazwy usłudze sieciowej
Narzędzie poprosi nas o podanie nazwy dla dodawanego elementu.
Rysunek 9. Usługa sieciowa bez zdefiniowanych parametrów
Na dodanym elemencie klikamy dwukrotnie, aby uruchomid kreator konfiguracji.
Rysunek 10. Kreator konfiguracji wywołania usługi sieciowej - Krok 1
W pierwszym kroku musimy podad adres usługi sieciowej.
Rysunek 11. Kreator konfiguracji wywołania usługi sieciowej - Krok 2
Z listy dostępnych metod wybieramy DodajNowaOplate i przechodzimy dalej.
Rysunek 12. Kreator konfiguracji wywołania usługi sieciowej - Krok 3
W kolejnym kroku musimy zdefiniowad przypisania dla parametrów wejściowych. Zaznaczamy
pierwszy z nich i wciskamy „Set Value…”
Rysunek 13. Kreator konfiguracji wywołania usługi sieciowej - Krok 3 - Przypisanie identyfikatora aktualnego kroku
procesu
Aby przypisad identyfikator aktualnego kroku musimy wpisad wyrażenie Me.Case.Id.
Rysunek 14. Kreator konfiguracji wywołania usługi sieciowej - Krok 3 - Przypisanie numeru indeksu
Do drugiego parametru przypisujemy numer indeksu z encji wniosek, w tym celu używamy wyrażenia
<Wniosek.NumerIndeksu>.
Rysunek 15. Kreator konfiguracji wywołania usługi sieciowej - Krok 3 - Skonfigurowane parametry wejściowe
Po zdefiniowani wszystkich parametrów wejściowych przechodzimy dalej.
Rysunek 16. Kreator konfiguracji wywołania usługi sieciowej - Krok 4
Metoda ta nie zwraca żadnej wartości, więc pozostawiając domyślne ustawienia zakooczymy
konfigurację.
Ostatnim mechanizmem integracyjnym, który zostanie przedstawiony w tym dokumencie są encje
wirtualne. Jest to sposób „dopięcia” do BizAgi Studio tabeli z zewnętrznej bazy danych. Aby dodad
taką encję należy przejśd w widok modułowy narzędzia.
Rysunek 17. Przejście w tryb modułowy
W prawym górnym rogu aplikacji wybieramy opcję Modules.
Rysunek 18. Widok modułowy
Z lewej strony znajduje się lista modułów, z której wybieramy opcję Systems. Następnie używając
meny kontekstowego na węźle systems wybieramy opcję „New System…”.
Rysunek 19. Dodawanie nowego systemu
W oknie konfiguracyjnym ustawiamy nazwę „TutorialSystem” oraz wybieramy opcję „Enable Virtual
Entities and Replication for this System”.
Następnie na węźle Systems->Tutorial System->Providers z menu kontekstowego wybieramy opcję
„New Provider…”
Rysunek 20. Konfiguracja Providera
Na wyświetlonej formatce nazywamy Providera ExternalDB oraz wybieramy opcję „Enable Virtual
Entities for this Provider”. Następnie przechodzimy na druga zakładkę ”Provider Development
Properties” i wciskamy przycisk „OLEDB config”.
Rysunek 21. Konfiguracja połączenia do bazy danych
Konfigurujemy połączenie do bazy danych.
Rysunek 22. Utworzenie encji wirtualnej
Na węźle Systems->Providers->ExternalDB->Virtual Entities->Default Virtual Entity z menu
kontekstowego wybieramy opcję “Add Entity to Virtual”. Na wyświetlonym oknie wybieramy Encję
Przedmioty oraz do „External Source” wpisujemy nazwę tabeli, a więc Przedmioty. Po zakooczeniu
wciskamy przycisk OK.