Stavy¶
Stavy definují jednotlivé fáze životního cyklu workflow. Každá položka se v daný okamžik nachází právě v jednom stavu. Přechody mezi stavy řídí logiku procesu.
Přehled¶
Workflow je stavový automat — sada stavů propojených přechody. Příklad jednoduchého schvalovacího procesu:
[Koncept] --(Odeslat)--> [Ke schválení] --(Schválit)--> [Schváleno]
|
+--(Zamítnout)--> [Zamítnuto]
Každý workflow musí mít: - Alespoň jeden výchozí stav (počáteční stav, do kterého se položka dostane při spuštění workflow) - Alespoň jeden koncový stav (stav, ve kterém workflow končí)
Vlastnosti stavu¶
| Vlastnost | Popis |
|---|---|
| InternalName | Interní název stavu (unikátní identifikátor v rámci workflow). |
| Title | Zobrazovaný název stavu. |
| IsDefault | Označení výchozího stavu. Workflow začíná v tomto stavu. Může být pouze jeden. |
| IsTerminal | Označení koncového stavu. Při vstupu do koncového stavu se workflow ukončí. |
| OnEnter | Akce provedené při vstupu do stavu. |
| OnLeave | Akce provedené při opuštění stavu. |
Akce při vstupu a opuštění¶
Ke každému stavu lze přiřadit akce, které se automaticky provedou:
- OnEnter — spustí se při vstupu do stavu (např. nastavení oprávnění, odeslání notifikace, přiřazení úkolu)
- OnLeave — spustí se při opuštění stavu (např. zrušení úkolů, obnovení oprávnění)
Příklady¶
Příklad: Základní sada stavů¶
| Stav | IsDefault | IsTerminal | Popis |
|---|---|---|---|
Draft |
Ano | Ne | Koncept — výchozí stav po spuštění workflow. |
PendingApproval |
Ne | Ne | Čeká na schválení — položka je přiřazena schvalovateli. |
Approved |
Ne | Ano | Schváleno — koncový stav. |
Rejected |
Ne | Ano | Zamítnuto — koncový stav. |