If Action¶
Akce If vyhodnotí JavaScript výraz a na základě výsledku provede jednu ze dvou větví vnořených akcí. Slouží k větvení logiky workflow.
Vlastnosti¶
| Vlastnost | Popis | Hodnota / Komentář |
|---|---|---|
| Expression | JavaScript výraz, který musí vrátit booleovskou hodnotu. Podporuje tokeny. | '{item:Status}' == 'Draft' |
| Success | Akce provedené, pokud výraz vrátí true. |
— |
| Else | Akce provedené, pokud výraz vrátí false. |
— |
| Label | Popisný štítek zobrazený v editoru akcí. | — |
| Disabled | Pokud je akce deaktivována, její vykonání se přeskočí. | Vypnuto / Zapnuto |
Chování¶
Výraz se vyhodnotí jako JavaScript. Tokeny ve výrazu se nahradí před vyhodnocením — proto je nutné textové tokeny obalit uvozovkami (např. '{item:Status}' == 'Draft'), jinak by se token nahradil jako identifikátor JavaScriptu. Pokud výraz vrátí null (např. chyba syntaxe), akce skončí chybou.
Příklady¶
Příklad: Podmíněné nastavení pole¶
<If Expression="'{item:Status}' == 'Draft'">
<Success>
<SetFieldValue TargetField="Status" Value="InReview" />
</Success>
<Else>
<SetFieldValue TargetField="Status" Value="Archived" />
</Else>
</If>
Příklad: Numerické porovnání¶
<If Expression="parseInt('{item:Amount}') > 10000">
<Success>
<AssignTask UserData="{item:Manager}" ... />
</Success>
<Else>
<SetFieldValue TargetField="ApprovedBy" Value="Auto-approved" />
</Else>
</If>