Fork und Join
| Um zwei oder mehrere voneinander unabhängige Ausführungszweige mit demselben Input auszuführen, können Sie eine Gabelung ( ![]() |
---|
Eigenschaften und Parameter
| Drehung der Komponente Mögliche Werte:
|
Input und Output
Der Fork
-Baustein gibt ein Input-Dokument an alle Ausführungszweige unverändert weiter.
Der Join
-Baustein hingegen behält die Output-Dokumente des letzten ausgeführten Bausteins innerhalb der Gabelung im Speicher. Wenn es sich um XML-Dokumente handelt, dann können sämtliche Output-XML-Dokumente mit einem Merge
-Baustein in einem XML-Dokument zusammengeführt werden. Wenn die Gabelungen jedoch beispielsweise als letzten Baustein vor dem Join
ein Binärdokument und ein XSL-Mapping zur dynamischen Parametrierung enthalten, dann kann ein Transfer-Adapter sowohl die dynamischen Parameter als auch den Binärdatenstrom verarbeiten.
Fork und Join verwenden
Ein Ausführungszweig kann aus einem oder mehreren Prozessschritten bzw. Bausteinen bestehen.
Die Ausführungszweige innerhalb einer Gabelung werden nicht parallel abgearbeitet, sondern anhand einer Priorität gesteuert, die an den Übergängen durch eine Zahl dargestellt wird. Die Priorität der Ausführungszweige können Sie in den Eigenschaften des Übergangs festlegen.
Setzen Sie bei Fork/Join
-Konstrukten, in denen in einem Ausführzweig eine Operation ausgeführt wird (z. B. ein XSL-Mapping zur dynamischen Parametrierung eines Adapters) und im anderen Zweig lediglich das Input-Dokument durchgeleitet werden soll, einen Verbindungsbaustein (

ACHTUNG: Unerwartetes Verhalten der Prozess-Engine!
Wenn Sie innerhalb einer Schleife, die ein Fork-
und Join
-Element enthält, eine weitere Schleife in Ihrem Prozessdiagramm definieren, dann kann die Prozess-Engine den Status für die bereits abgearbeiteten Prozessschritte nicht korrekt zurücksetzen.
Lagern Sie stattdessen die innere Schleife mit sämtlichen Prozessbausteinen als Subprozess aus. Weitere Informationen hierzu finden Sie unter (7.4.0-de) Subprocess.