Sterowanie przepływem dla wielu zmiennych
Uwaga: dotyczy tylko wersji posiadającej sterowanie warunkowe.
Jeśli przebieg procesu zależy od więcej niż jednej zmiennej w większości przypadków wystarczy odpowiednio ustawić kolejność połączeń. Gdy takie rozwiązanie nie jest wystarczające, można wykorzystać krok systemowy lub nieedytowalne pole.
1. Kolejność połączeń
Kolejność połączeń określa, w jakiej kolejności sprawdzane są warunki przejścia do kolejnych kroków procesu. System analizuje je od góry do dołu i realizuje pierwsze połączenie, którego warunki zostaną spełnione.
Aby zmienić kolejność połączeń należy złapać kursorem ikonę dwóch pasków przy wybranym połączeniu i przeciągnąć w odpowiednie miejsce na liście.

2. Krok systemowy
Jeżeli samo ustawienie kolejności połączeń nie pozwala zrealizować wymaganej logiki procesu, można zastosować krok systemowy.
Na kroku systemowym uruchamiany jest zewnętrzny skrypt, podany w polu Adres kroku systemowego, który na podstawie wartości wprowadzonych we wcześniejszych krokach procesu może uzupełnić zmienną sterującą dalszym przebiegiem procesu.
3. Nieedytowalne pole uzupełniane przez skrypt
Alternatywnym rozwiązaniem jest wykorzystanie nieedytowalnego pola na formularzu, którego wartość jest uzupełniana przez zewnętrzny skrypt.
Skrypt należy przypisać do pól decydujących o dalszym przebiegu procesu w polu Adres wywołania po zmianie. Na podstawie wartości wprowadzonych przez użytkownika skrypt uzupełnia pole sterujące, które następnie jest wykorzystywane w warunkach przepływu.
Zastosowanie nieedytowalnego pola sterującego uniemożliwia użytkownikowi ręczną zmianę jego wartości.

Przykład:
O dalszym przebiegu procesu decydują wartości dwóch pól. Skrypt, na podstawie ich wartości, wylicza i uzupełnia pole sterujące. Następnie wartość tego pola jest wykorzystywana w warunku przepływu do określenia, którą ścieżką proces będzie kontynuowany.
Jeśli oba pola znajdują się na tym samym formularzu i ich wartości mogą ulegać zmianie, akcję onChange należy przypisać do obu pól (wtyczek), aby skrypt był uruchamiany po każdej zmianie wartości któregokolwiek z nich.
Jeżeli masz pytania, napisz do nas




