b1fb3efaa1
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
1.7 KiB
1.7 KiB
subworkflow — Anderen Workflow einbetten
Zweck: Lädt eine zweite Workflow-XML (Name ohne .xml aus dem Workflow-Verzeichnis) und führt sie synchron im laufenden Workflow aus — inklusive Wartezuständen. Sub- und Parent-Workflow teilen sich keinen Ausführungsstatus, dieselbe XML kann also mehrfach eingebettet werden. Variablen werden per <pass> hinein- und per <return>/merge_prefix herausgereicht.
Parameter
| Name | Pflicht? | Default | Beschreibung |
|---|---|---|---|
xml |
ja | — | Name der Sub-Workflow-Definition (ohne .xml). |
<pass><var name="…">wert</var></pass> |
nein | — | Eingangsvariablen für den Sub-Workflow. Ohne <pass> erbt er den gesamten Parent-Kontext. |
<return><var name="…" from="…"/></return> |
nein | — | Rückgabevariablen: from = Name im Sub-Kontext (Default: wie name), name = Zielname im Parent-Kontext. |
merge_prefix |
nein | — | Hängt alternativ/zusätzlich den kompletten Sub-Kontext mit diesem Präfix in den Parent-Kontext. |
Eingangswerte: Parent-Kontext (komplett geerbt) plus explizite <pass>-Variablen.
Ausgangswerte: Die <return>-Variablen bzw. alle Sub-Variablen unter <merge_prefix>…. Wartezustände (inkl. assign_to) werden aus dem Sub-Workflow durchgereicht. Hinweis: Der Sub-Workflow erscheint nicht als eigener Eintrag im Dashboard — dafür stattdessen einen regulären Workflow-Start nutzen.
<task type="subworkflow" id="freigabe">
<config>
<xml>freigabe-modul</xml>
<pass>
<var name="betrag">{{summe}}</var>
</pass>
<return>
<var name="freigabe_decision" from="decision" />
<var name="freigabe_comment" from="comment" />
</return>
</config>
</task>