Przewodnik po Flowee - jak budować aplikacje procesowe przy użyciu Flowee Help

Dodanie zadania typu Custom Manual Task

Wybierz z lewego menu ikonkę Create Custom Manual Task i analogicznie przeciągnij na proces, zadanie jest już domyślnie skonfigurowane:

  1. Opcjonalnie możesz wskazać ID zewnętrznego systemu do komunikacji z Flowee
    Przekazanie parametru informuje, czy zadanie ma być wyświetlane w zewnętrznym widoku. Przykładowo dla Portalu jest to parametr *portal  *

Obraz zawierający tekst, zrzut ekranu, Czcionka, linia Opis wygenerowany automatycznie
*
* Przykład użycia: komunikacja Flowee z Portalem Klienta:

Obraz zawierający tekst, zrzut ekranu, Czcionka, linia Opis wygenerowany automatycznie
  1. Dodaj kolejkę:

    Kolejki dodajemy w celu pogrupowania zadań użytkownikom. Jeżeli nie dodasz kolejki, a później nie przypiszesz użytkownikowi uprawnień do tej kolejki to użytkownik nie będzie mógł pobrać tego zadania do obsługi.

Obraz zawierający tekst, linia, zrzut ekranu, biały Zawartość wygenerowana przez AI może być niepoprawna.

Więcej o kolejkach w rozdziale Kolejki.

  1. Dodaj uprawnienia:

  • Add Permission (Edit)

  • Add Permission (View)

Uprawnienie EDIT_TASK_ALL i VIEW_TASK_ALL są ogólnymi uprawnieniami do edycji i podglądu zadań. I tylko role z zasetapowanymi tymi uprawnieniami będą mogły realizować zadania.

Jeśli jest potrzeba, aby ograniczona grupa użytkowników mogła obsługiwać dane zadanie to lepiej jest utworzyć specjalne uprawnienie np. EDIT_TASK_RESTRICTED, dodać je na procesie do taska i stworzyć osobną rolę tylko z tym uprawnieniem.

Obraz zawierający tekst, zrzut ekranu, Czcionka Zawartość wygenerowana przez AI może być niepoprawna.

Więcej o uprawnieniach w rozdziale Uprawnienia.

  1. Przypisz użytkownika:
    Umożliwia przypisanie użytkownika do zadań w procesie, co powoduje automatyczne przypisanie zadania do użytkownika.

lub

Zmienna ${execution.getVariable('createdBy')} pobiera z danych z silnika Flowee BPMS z danych procesowych dane użytkownika, który wystartował proces np. doradca klienta w przypadku procesu kredytowego.

Zmienna ${XX_assignee} jest skorelowana ze zmienną zadeklarowaną w Inputs i Outputs.

Przejdź do:
Extensions → Inputs/Outputs → Add inputs parameter

Dodaj:

▶ XX_assignee

def submittedBy = execution.getVariable('submittedByXX') as String if (submittedBy != null) { return submittedBy } return null;

Przejdź do:
Extensions → Input/Output → Add outputs parameter

Dodaj:

▶ submittedByRM

Efekt

Taka konfiguracja z wykorzystaniem zmiennych ${XX_assignee}, XX_assignee, submittedByXX powoduje że do zadania przypisywana jest automatycznie osoba, która jest zadeklarowana w outputs poprzedniego zadania lub bieżącego zadania, czyli osoba która zasubmitowała poprzednie lub obecne zadanie (w przypadku pętli i powrotu do tego samego zadania). Wskazówka: prefix XX jest skrótem od roli/aktora realizującego zadanie. Dobrą praktyką jest stosować prefixy określające rolę pracownika kończącego dane zadanie jako submittedByXX, XX_assignee.

  1. Dodaj formularz(e):

Obraz zawierający tekst, Czcionka, linia, diagram Zawartość wygenerowana przez AI może być niepoprawna.

Forms:

  • Kliknij Add form i w polu Template wybierz formularz, który ma się wyświetlić na tym kroku. Ważne: formularz musi być opublikowany w modelerze (status=Aktywny)

  • Następnie w Name (dictionary path) wpisz nazwę zakładki, pod którą ma się wyświetlać ten formularz lub wpisz ścieżkę ze słownika np. CUSTOM.PROPERTIES_PANEL.FORMS_TAB_NAME.COMMUNICATION

  • w polu Order określ kolejność dla wyświetlania danego formularza (system liczy od lewej strony od 1),

  • zaznaczenie Focus spowoduje, że po wejściu na zadanie użytkownik będzie przekierowany automatycznie na tę zakładkę (tj. formularz).

  • W polu Display wybierz opcję, która będzie określała czy Twój formularz będzie edytowalny (główny) czy tylko do podglądu czy jako edytowalny-opcjonalny oraz określi również walidację po akcji submit na formularzu:

    • jeżeli wybierzesz VIEW to nie będzie walidacji i formularz będzie tylko do podglądu,

    • jeżeli wybierzesz EDIT to formularz będzie walidowany i będzie możliwy do edycji,

    • jeżeli wybierzesz SIDE to formularz nie będzie walidowany

  • Opcji SIDE używamy np. w sytuacji kiedy mamy na danym kroku manualnym więcej formularzy/zakładek i jedna z nich lub więcej są opcjonalne do wypełnienia przez użytkownika np. są to formularze do zlecania zadań innym jednostkom obsługiwane jako event message. Zaznaczamy wtedy opcję SIDE i po akcji submit system te formularze ignoruje.

  • Jeżeli zaznaczasz SIDE i formularz ma być walidowany to na nim trzeba odpowiednio skonfigurować akcję dedykowaną tylko dla tego formularza lub na ogólnej akcji submit w metadanej ‘validateForms’ trzeba wskazać w arrayu kod formularza side’owego, żeby submit go też walidował

Obraz zawierający tekst, Czcionka, linia, zrzut ekranu Zawartość wygenerowana przez AI może być niepoprawna.
Obraz zawierający tekst, linia, Czcionka, numer Zawartość wygenerowana przez AI może być niepoprawna.
  1. Akcje:

Poniższa lista akcji jest inicjalnie zasetapowana na podstawie metadanej: modeler \| Flowee BPMS \| action-config:

  • Akceptuj

  • Autozapis

  • Odepnij

  • Odepnij ode mnie

  • Przypisz

  • Przypisz do mnie (kontekst tasklisty)

  • Przypisz do mnie (kontekst zadania)

  • Wróć do listy

  • Wstrzymaj i Wyjdź

  • Zapisz

  • Zmiana terminu wykonania zadania

  • Zmień

  • Zmień priorytet

Powyższe akcje są zestawem rekomendowanych/podstawowych akcji. Innych z listy możesz użyć zależnie od potrzeb Twojego procesu lub stworzyć własną akcję biznesową.

Na liście znajdują się akcje uniwersalne, możliwe do użycia w dowolnym procesie. Są również akcje, które zostały stworzone na potrzeby konkretnych procesów np. Wniosku kredytowego. Czytaj opisy.

Akceptuj – służy do zatwierdzania zadań w procesie. Powoduje, że aktualne zadanie zostanie zakończone i otrzyma status Zakończone. W procesie powstaje następne zadanie lub jeżeli akcja jest wywołana na ostatnim zadaniu w procesie to wówczas proces się kończy i otrzymuje status Zakończony

Anuluj sprawę – służy do przerwania procesu i anulowania zadania. Proces będzie miał status Anulowany.

Autozapis – zapisuje bieżące zmiany na zadaniu w określonym przez system interwale czasowym.

Odepnij – służy do odpięcia od użytkownika przypisanego zadania na liście zadań. Wówczas zadanie wraca na listę zadań Oczekujących, czyli możliwych do ponownego przypisania

Odepnij ode mnie – służy do odpięcia od przypisanego użytkownika zadania na liście zadań bezpośrednio przez użytkownika, do którego zadanie jest przypisane. Wówczas zadanie wraca na listę zadań Oczekujących, czyli możliwych do ponownego przypisania

Odrzuć – służy do przerwania procesu i odrzucenia zadania. Proces będzie miał status Odrzucony.

Przypisz – służy do przypisywania zadania na liście zadań poprzez wybór z listy użytkowników osoby, posiadającej uprawnienia do realizacji zadania.

Przypisz do mnie (różnią się kontekstem) – służy do przypisywania zadania bezpośrednio do użytkownika, który wykonuje tę akcję na liście zadań.

Przypisz do mnie (różnią się kontekstem) – służy do przypisywania zadania bezpośrednio do użytkownika, który wykonuje tę akcję będąc na zadaniu w trybie do odczytu i chce się przypisać do zadania.

Własna akcja - customowa służy do utworzenia niestandardowej akcji realizującą potrzebę biznesową

Wróć do listy służy do przeniesienia użytkownika na listę, z której wchodził w szczegóły danego obiektu np. zadania, dokumentu, kolejki, uprawnienia itp.

Wstrzymaj i Wyjdź – służy do zapisania danych zadania w procesie oraz do zatrzymania licznika czasu na zadaniu. Powoduje, że dane zadanie zostanie wstrzymane i otrzyma status Wstrzymane oraz użytkownik zostanie przeniesiony na główna listę zadań.

Wyślij wiadomość – służy do wysłania wiadomości na Portal Klienta do procesu. Użytkownik po jej wykonaniu pozostaje na ekranie.

Zapisz – służy do zapisywania zmodyfikowanych danych na zadaniu realizowanym przez użytkownika w procesie. Użytkownik po jej wykonaniu pozostaje na zadaniu.

Zapisz i Wyślij wiadomość – służy do zapisywania zmodyfikowanych danych na zadaniu realizowanym przez użytkownika w procesie. Użytkownik po jej wykonaniu pozostaje na zadaniu. Ale jednocześnie nastąpi zainicjowanie dowolnego eventu np. przeliczenie checklisty na Portalu po zapisaniu danych na wniosku.

Zatwierdź i Wyślij wiadomość – służy do zatwierdzania zadań w procesie. Powoduje, że aktualne zadanie zostanie zakończone i otrzyma status Zakończone, ale jednocześnie nastąpi zainicjowanie dowolnego eventu np. przeliczenie checklisty na Portalu po zapisaniu danych wniosku.

Zmiana terminu wykonania zadania – służy do skrócenia SLA zadania w stosunku do SLA, które zostało zdefiniowane w implementacji procesu. Akcja jest widoczna na liście zadań w menu kontekstowym

Zmień – służy do zmiany przypisania zadania na liście zadań poprzez wybór z listy użytkowników osoby, posiadającej uprawnienia do realizacji zadania. Akcja jest widoczna dla zadań, które są już przypisane do użytkownika.

Zmień priorytet – służy do zmiany priorytetu zadania w stosunku do priorytetu, który został zdefiniowany dla danego zadania w implementacji procesu. Akcja jest widoczna na liście zadań w kolumnie Priorytet.

Zwróć do uzupełnienia – służy do cofnięcia zadania w procesie do poprawy. Powoduje, że aktualne zadanie zostanie zakończone i otrzyma status Zakończone oraz w procesie powstanie następne zadanie w celu uzupełnienia brakujących danych lub informacji. Akcja może być wykorzystywana zamiennie z akcją Cofnij. Proces otrzymuje status Do uzupełnienia.

Obraz zawierający tekst, zrzut ekranu, oprogramowanie, komputer Zawartość wygenerowana przez AI może być niepoprawna.
Obraz zawierający tekst, zrzut ekranu Zawartość wygenerowana przez AI może być niepoprawna.

Przykład konfiguracji Własnej akcji - customowej:

Obraz zawierający tekst, zrzut ekranu, Czcionka, algebra Zawartość wygenerowana przez AI może być niepoprawna.
  1. Domyślnie skonfigurowane: Inputs: FnPriority – funkcja nadpisująca FnTaskPriority i odpowiedzialna za przekazanie priorytetu zadania w zależności czy priorytet zadania czy priorytet sprawy jest wyższy

  2. Domyślnie skonfigurowane: Inputs: FnForms – zmienna odpowiedzialna za przekazanie formularzy

  3. Domyślnie skonfigurowane: Inputs: FnFormsConditions – zmienna odpowiedzialna za przekazanie warunków dla wyświetlania formularzy

  4. Domyślnie skonfigurowane: Inputs: FnFormsExpression – zmienna odpowiedzialna za formularze przekazane jako expression

  5. Domyślnie skonfigurowane: Inputs: FnActions – zmienna odpowiedzialna za przekazanie akcji

  6. Domyślnie skonfigurowane: Inputs: FnActivity – zmienna odpowiedzialna za przekazanie typów czynności

  7. Domyślnie skonfigurowane: Inputs: FnCompetenceEditable – zmienna odpowiedzialna za przekazanie uprawnień do edycji

  8. Domyślnie skonfigurowane: Inputs: FnCompetenceReadOnly – zmienna odpowiedzialna za przekazanie wymaganych uprawnień do odczytu

  9. Domyślnie skonfigurowane: Inputs: group

  10. Domyślnie skonfigurowane: Inputs: FnQueue – zmienna odpowiedzialna za przekazanie kolejki

  11. Domyślnie skonfigurowane: Inputs: FnQueueExpression – zmienna odpowiedzialna za kolejkę przekazaną jako expression

  12. Domyślnie skonfigurowane: Inputs: FnDueDate – zmienna odpowiedzialna za przekazanie terminu ważności zadania

  13. Domyślnie skonfigurowane: Inputs: slaDays – dni SLA

  14. Domyślnie skonfigurowane: Inputs: slaHours – godziny SLA

  15. Domyślnie skonfigurowane: Inputs: slaMinutes – minuty SLA

  16. Domyślnie skonfigurowane: Inputs: slaCalendarType – typ kalendarza (dni robocze/kalendarzowe/kalendarzowe z uwzględnieniem roboczych)

  17. Domyślnie skonfigurowane: Inputs: expectedDurationDays – oczekiwany termin realizacji zadania w dniach

  18. Domyślnie skonfigurowane: Inputs: expectedDurationHours – oczekiwany termin realizacji zadania w godzinach

  19. Domyślnie skonfigurowane: Inputs: expectedDurationMinutes – oczekiwany termin realizacji zadania w minutach

  20. Domyślnie skonfigurowane: Inputs: expectedDurationCalendarType – typ kalendarza (dni robocze/kalendarzowe/kalendarzowe z uwzględnieniem roboczych)

  21. Domyślnie skonfigurowane: Inputs: FnTaskPriority – priorytet zadania jako string

  22. Domyślnie skonfigurowane: Inputs: FnExpectedDurationDays – funkcja nadpisująca expectedDurationDays w przypadku braku ich zdefiniowania danymi z slaDays

  23. Domyślnie skonfigurowane: Inputs: FnExpectedDurationHours – funkcja nadpisująca expectedDurationHours w przypadku braku ich zdefiniowania danymi z slaHours

  24. Domyślnie skonfigurowane: Inputs: FnExpectedDurationMinutes – funkcja nadpisująca expectedDurationMinutes w przypadku braku ich zdefiniowania danymi z slaMinutes

  25. Domyślnie skonfigurowane: Inputs: FnExpectedDurationCalendarType – funkcja nadpisująca expectedDurationCalendarType w przypadku braku ich zdefiniowania danymi z slaCalendarType

  26. Domyślnie skonfigurowane: Inputs: FnAppId – zmienna odpowiedzialna za przekazanie ID zewnętrznego systemu do komunikacji z Flowee. Używane do wysłania zadań na Portal. Opis konfiguracji w rozdziale Tworzenie zadania do wyświetlenia na portalu

Należy dodać poniższe zmienne do Inputs:

▶ FnTaskNumber

def number = (execution.getVariable("taskCounter") as Integer) + 1 return execution.processBusinessKey + "_" + String.format("%03d", number)

▶ FnAttentionState

▶ FnShowConsultations

Należy dodać poniższe zmienne do Outputs:

▶ taskCounter

09 lutego 2026