




Dotyczy wersji 2021.1.x i powyżej, autor: Konrad Wojtycza
Wstęp
Sterowanie obiegiem (Branch) pozwala na podstawie ustalonego warunku przekierować element obiegu wybraną ścieżką przejścia. Za pomocą sterowania obiegiem możemy między innymi ustalić logikę:
- pomijania kroków,
- przypisywania zadania do kolejnych osób, np. w przypadku akceptacji,
- zatrzymywania elementów w kroku do czasu spełnienia warunków.
W niniejszym artykule zostaną przedstawione dwa obiegi korzystające ze sterowania obiegiem:
- obieg Akceptacji wniosków urlopowych (Rys.1), w którym sterowanie obiegiem omija krok akceptacji kierownika działu, jeśli liczba wnioskowanych dni urlopu jest mniejsza niż trzy dni,
- obieg Księgowości (Rys.2), w którym krok sterujący zwraca element do kroku akceptacji dopóki faktura nie zostanie zaakceptowana przez wszystkie wymagane osoby.
Artykuł ten stanowi odświeżenie starszego artykułu o tej samej tematyce.


Konfiguracja obiegu „Akceptacji wniosków urlopowych”
Formularz obiegu Akceptacji wniosków urlopowych widoczny jest na Rys. 3

Krok sterujący obiegiem nazywa się „MGMT acceptation?” (Rys. 4), na którym znajdują się dwie ścieżki. Jedna z nich prowadzi do akceptacji managera pracownika (Rys. 5), a druga bezpośrednio do kroku systemowego „Entry to HR system”, na którym dokonywany jest wpis do systemu HR (Rys. 6).



Właściwa konfiguracja sterowania obiegiem znajduje się w zakładce "Sterowanie obiegiem" (Rys. 7). W polu „Reguła biznesowa wyboru ścieżki" zdefiniować należy regułę, która zwróci ścieżkę przejścia prowadzącą do kolejnego kroku. W przedstawionym przypadku, jeśli liczba wnioskowanych dni wolnych będzie większa od trzech, wniosek o urlop trafi do kroku akceptacji przez managera. W przeciwnym razie, wniosek trafi bezpośrednio do kroku „Entry to HR system”.

W przedstawionym przykładzie krok Manager acceptation został ominięty, ponieważ liczba wnioskowanych dni wolnych nie przekroczyła trzech (Rys. 8).

Konfiguracja obiegu „Księgowości”
Formularz obiegu Księgowości widoczny jest poniżej:

„All approved?” to krok sterowania obiegiem. Przywraca on elementy obiegu do kroku akceptacji, dopóki wszystkie wymagane osoby nie dokonają akceptacji faktury. Akceptanci faktury widoczni w kolumnie Akceptant (Rys. 9), przypisani są do poszczególnych kont rozbicia analitycznego.

Konfiguracja sterowania obiegiem na kroku „All approved?” (Rys. 11) została zdefiniowana w taki sposób, że jeśli na liście pozycji „Rozbicie analityczne” (Rys. 9) będzie znajdowała się osoba dla której wartość wiersza „Zaakceptowano” będzie wynosić „Nie”, to element będzie przesuwany ścieżką „(system) to Approval” kierującą do kroku Akceptacji. W przeciwnym razie element, trafi do kroku „Booked” ścieżką „(system) to Booked”.
Reguła „All approved?” służąca do wyegzekwowania tej logiki została przedstawiona na Rys. 12.


Na ścieżce „(system) to Approval” (Rys. 13) reguła „to remaining Approvers” (Rys. 14) wybiera akceptantów, którzy jeszcze nie zaakceptowali faktury.


Podsumowanie
Krok sterujący obiegiem, to niezbędna funkcjonalność w systemie obsługującym obiegi elementów. Znajdzie zastosowanie wszędzie tam, gdzie przebieg obiegu zależy od różnorodnych warunków, wynikających z logiki biznesowej.