28 lines
1.1 KiB
Markdown
28 lines
1.1 KiB
Markdown
|
|
# `if` — Bedingte Verzweigung
|
||
|
|
|
||
|
|
**Zweck:** Führt abhängig von einer Bedingung die Tasks im `<then>`- oder im optionalen `<else>`-Zweig aus. Auch innerhalb der Zweige funktionieren wartende Tasks — der Workflow setzt beim nächsten Trigger an derselben Stelle fort.
|
||
|
|
|
||
|
|
**Parameter**
|
||
|
|
|
||
|
|
| Name | Pflicht? | Default | Beschreibung |
|
||
|
|
|---|---|---|---|
|
||
|
|
| `condition` (Attribut) | ja | — | Bedingung mit Platzhaltern. Operatoren: `==`, `!=`, `>`, `<` (numerisch). Ohne Operator: leerer Wert = falsch, nicht-leerer Wert = wahr. Anführungszeichen um Werte werden entfernt. |
|
||
|
|
| `<then>` | ja | — | Container mit beliebigen Tasks für den Wahr-Fall. |
|
||
|
|
| `<else>` | nein | — | Container mit Tasks für den Falsch-Fall. |
|
||
|
|
|
||
|
|
**Eingangswerte:** Kontextvariablen in der Bedingung (z. B. `{{decision}}`).
|
||
|
|
|
||
|
|
**Ausgangswerte:** Keine eigenen; Ausgaben der Kind-Tasks werden in den Kontext übernommen.
|
||
|
|
|
||
|
|
```xml
|
||
|
|
<task type="if" condition="{{decision}} == 'approved'">
|
||
|
|
<then>
|
||
|
|
<task type="email" id="mail_ok">…</task>
|
||
|
|
</then>
|
||
|
|
<else>
|
||
|
|
<task type="email" id="mail_nok">…</task>
|
||
|
|
<task type="stop" id="abbruch" />
|
||
|
|
</else>
|
||
|
|
</task>
|
||
|
|
```
|