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

Dodanie zadania: Process Initialization (Custom Task Flowee)

Używane do konfiguracji priorytetu procesu, numeracji zadań, kalendarza, SLA, kodu procesu i statusów biznesowych procesu oraz deklarowania zmiennych procesowych, a także nagłówka zadania i terminu zadania.

Wybierz z lewego menu ikonkę „rakiety” tj. Create Process Initialization i przeciągnij na proces, zadanie jest już domyślnie skonfigurowane:

  1. Nazwij zadanie Initial Config

  2. Dodaj Outputs: headers to zmienna służąca do opisania nagłówka zadania w procesie

Czy wymagana? – opcjonalne. Proces się uruchomi, jednak „rakieta” jest pomocna do deklarowania zmiennych procesowych np. statusów procesu, zmiennych wykorzystywanych później w logikach sterujących przepływami itp.

Jakie przyjmuje parametry? – dowolne

Jak i kiedy z niej korzystać – np. kiedy chcesz wyświetlać dane w nagłówku, jeśli nie użyjesz, nagłówek będzie pusty.

Obraz zawierający tekst, Czcionka, zrzut ekranu, algebra Opis wygenerowany automatycznie

Treść do pola Value skopiuj i wklej stąd (są to metadane potrzebne do wyświetlenia nagłówka dla zadania, bez tego mielibyśmy brak nagłówków w zadaniach. Ważne jest, żeby metadane zawierały także ścieżki ze słownika flowee|pl oraz flowee|en). Wartości biznesowe do pathExpression są pobierane z response przy pobieraniu danych na tasklistę z domeny task np. https://web.develop.flowee.finture.com/api/tsk/v3/task?page=1&size=10&sort=active%3Adesc&sort=create_time%3Adesc&sort=complete_time%3Adesc.

Expression:

{ "styles": "cols_2", "headers": [ { "styles": "col_1 row_1", "pathExpression": "$.businessParam1", "dictionaryPath":"CUSTOM.TASKLISTS.businessParam1", "type": "string" }, { "styles": "col_1 row_2", "pathExpression": "$.details.assignee", "dictionaryPath":"DEFAULT.TASKLISTS.assignee", "type": "user" }, { "styles": "col_1 row_3", "pathExpression": "$.details.FnProcessDueDate", "dictionaryPath":"DEFAULT.TASKLISTS.casePlannedExecutionDate", "type": "datetime" }, { "styles": "col_1 row_4", "pathExpression": "$.process.businessStatus", "dictionaryPath":"DEFAULT.TASKLISTS.caseStatus", "type": "string" }, { "styles": "col_2 row_1", "pathExpression": "$.name", "dictionaryPath":"DEFAULT.TASKLISTS.taskName", "type": "string" }, { "styles": "col_2 row_2", "pathExpression": "$.details.FnTaskNumber", "dictionaryPath":"DEFAULT.TASKLISTS.taskNumber", "type": "string" }, { "styles": "col_2 row_3", "pathExpression": "$.state", "dictionaryPath":"DEFAULT.TASKLISTS.taskStatus", "type": "dictionary", "dictionaryPrefix": "DEFAULT.TASKS.STATUS." } ] }

Response:

"state": "inProgress", "issueSummaryBusinessState": null, "businessParam1": "Kopytko", "businessParam2": "801427885", "businessParam3": "-", "lockedBy": " dobrohna dżem ", "priority": 5, "name": "Zgłoszenie reklamacji", "creationTime": "2026-01-14T14:16:04.806Z", "modificationTime": "2026-01-14T14:16:04.806Z", "lastAssignTime": "2026-01-14T14:16:08.307368Z", "completeTime": null, "details": { "startCorrelationId": "CAM704386a29-1030-45da-8c1a-6c74047a092c", "FnChecklistReadOnly": "true", "FnDueDate": "2026-01-15T14:16:04.758580049Z", "assignee": { "name": "Dobrohna", "email": "dobrohna.dzem@finture.com", "surname": "Dżem", "username": "dobrohna dżem" }, "FnTaskNumber": "DEMO_1001431116_110506_003", "process": { "processInstance": "CAM7716c1623-ff14-42c9-993c-0735f979344d", "processKey": "DEMO", "processName": "DEMO", "status": "inProgress", "businessStatus": "W trakcie realizacji", "createTime": "2026-01-14T13:37:13.02073Z", "completeTime": null },

Dodatkowe wyjaśnienia do ścieżek słownikowych:

pathExpression – odniesienie do ścieżki w taskdetails, z której ma zostać zasilona wartość nagłówka. Wyświetla nagłówek na konkretnym zadaniu, a jsonpath można wyszukać w jsonie procesowym, który zobaczymy w przeglądarce.

dictionaryPath – ścieżka ze słownika odpowiadająca za tłumaczenie label’a nagłówka na język polski lub angielski

type – typ, format wartości np. String, data

styles - określenie miejsca położenia danej wartości w headerze. Header składa się z dwóch kolumn, a każda kolumna z trzech wierszy.

  1. Dodaj Outputs: FnProcessDueDate to zmienna służąca do wyznaczania daty zakończenia sprawy, wyliczona na podstawie zdefiniowanego w procesie SLA procesu.

    FnProcessDueDate określa również wartość domyślną dueDate w przypadku zadań, jeśli dla zadania nie zostało określone dedykowane SLA.

Treść do pola Script skopiuj i wklej stąd (jest to skrypt do przekształcenia z parametru SLA liczby dni, wybrania typu kalendarza i obliczenia daty w danym kalendarzu wg liczby dni zdefiniowanych jako SLA):

var sla = SLA as Integer var calendar = calendarType return calendarDelegate.calculateDate(calendar, sla, 0, 0).toString()

Wskazówka: jest to skrypt groovy - deklaracje zmiennych i metod muszą być inicjowane w nowych wierszach. Dotyczy wszystkich skryptów.

  1. Domyślnie skonfigurowane: Outputs: FnProcessPriority – zmienna określająca priorytet procesu

Czy wymagana? – nie można usunąć z konfiguracji ‘rakiety’.
Bez tej zmiennej proces się uruchomi. Domyślnie ustawione 3

Jakie przyjmuje parametry? – Liczba całkowita (np. 1, 2, 3). Zakres: 1 (najniższy priorytet) do 5 (najwyższy priorytet).

Jak i kiedy z niej korzystać – jeśli chcemy ustawiać priorytet procesu. Wykorzystywane w ustalaniu priorytetu zadania tj. FnPriority. Używana do różnicowania obsługi zadań lub ścieżek procesowych w zależności od priorytetu. Na przykład: wysyłanie zadań o wysokim priorytecie do określonej kolejki.

Priorytet procesu definiuje się w zakładce Custom Configuration (stojąc na zadaniu Initial Config), wybierając z listy wartość

Image15
  1. Dodaj: Outputs: taskCounter – zmienna odpowiedzialna za numerację zadań wyświetlanych na taskliście

Czy wymagana? – opcjonalnie, można usunąć z konfiguracji ‘rakiety’.
Proces się uruchomi. Nie ma domyślnej wartości. Jednak jeśli wykorzystujemy header na tasku to ta zmienna jest wówczas wymagana.

Jakie przyjmuje parametry? - Liczba całkowita. Zakres: >= 0. Jeżeli wpiszesz wartość 12 to od tej wartości system będzie kolejno numerować zadania.

Jak i kiedy z niej korzystać? - gdy chcemy numerować zadania w procesie i podprocesie. W celu numerowania zadania dodatkowo na inputach skonfiguruj FnTaskNumber (konfiguracja opisana w rozdziale Nadawanie numeru kolejnego zadania dla zadań manualnych)

Schemat numerowania zadań - nr zadania składa się z numeru sprawy (FnDispositionNumber) + _ + kolejny numer instancji taska, zaczynając od 001 np. DEMO_1001431116_110477_009

  1. Dodaj: Outputs: calendarType – zmienna służąca do określania harmonogramów pracy w zależności od kontekstu procesu.

Jakie przyjmuje parametry? Tekstowe (np. default, holiday, weekend)

Jak i kiedy z niej korzystać? Na przykład, wartość default może oznaczać standardowe dni robocze, a holiday może wywołać dodatkowy timer w przypadku pracy w dni wolne.

  1. Dodaj: Outputs: SLA – zmienna służąca do śledzenia lub monitorowania czasu realizacji procesu.

    Jakie przyjmuje parametry? Liczba całkowita lub zmiennoprzecinkowa. Zakres: > 0 (dni).

  2. Dodaj: Outputs: processCode – zmienna określająca techniczny kod procesu (np. DEMO,) – ten sam co przy tworzeniu procesu jako ID

Czy wymagana? – opcjonalnie, można usunąć z konfiguracji.
Proces się uruchomi. Nie ma domyślnej wartości.

Jakie przyjmuje parametry? - dowolny string. Np. DEMO,
Jak i kiedy z niej korzystać - w każdej logice, w której potrzebujemy oprzeć się na tym z jakiego procesu aktualnie korzystamy. Np. jeżeli chcesz z reguły dotyczącej konfiguracji konsultacji pobrać konfigurację konsultacji dla danego procesu lub przy wyznaczeniu numeru biznesowego sprawy do zmiennej FnDispositionNumber (opis konfiguracji w rozdziale Dodanie zadania typu ScriptTask: Wyznaczenie numeru procesu)

  1. Dodaj: Outputs: processInstanceId - zmienna pomocnicza, która pobiera ID instancji procesu z silnika Flowee BPMS

Czy wymagana? – opcjonalnie, można usunąć z konfiguracji.
Proces się uruchomi. Nie ma domyślnej wartości. Jednak jest potrzebna często.

Jakie przyjmuje parametry? - ID instancji procesu
Jak i kiedy z niej korzystać - w każdej logice, w której potrzebujemy oprzeć się na tym z jakiej instancji procesu aktualnie korzystamy. Np. jeżeli chcesz pobrać dane z jsona procesowego, w scryptach, w dataDelegate, w setValue, w expressionach itd. więc jest potrzebna. Przykład wykorzystania w rozdziale Dodanie zadania typu ServiceTask: Ustawienie statusu procesu lub Łączenie procesu głównego z podprocesem – Call Activity i mapowanie danych lub Dodanie inicjalnej checklisty do procesu

  1. Outputs: statusXYZ – nazwa statusu biznesowego („XYZ” oznacza dowolną nazwę statusu, w przypadku Rejected może być Value: Odrzucony)

statusToDo=> Do realizacji
statusInProgress=> W trakcie realizacji
statusTerminated=> Zakończony
statusToRefill=> Do uzupełnienia
statusInRefill=> W trakcie uzupełnienia
statusRefilled=> Uzupełniony
statusCanceled=> Anulowany
statusPaused=> Wstrzymany
statusRejected=> Odrzucony

Czy wymagana? – opcjonalnie, można usunąć z konfiguracji.
Proces się uruchomi. Nie ma domyślnej wartości. Jednak jeśli wykorzystujemy header na tasku to ta zmienna jest wówczas wymagana.

Jakie przyjmuje parametry? - dowolne

Jak i kiedy z niej korzystać - jeśli chcemy określać status biznesowy procesu to możemy użyć tej zmiennej. Opis konfiguracji w rozdziale Dodanie zadania typu ServiceTask: Ustawienie statusu procesu

09 lutego 2026