Inhaltsverzeichnis

Sinn und Zweck des Bausteins

Der Hauptprozess soll aus dem Subprozess beendet werden können. Hierfür wird im Subprozess entschieden (mittels XOR-Gateway), ob der Hauptprozess nach Beenden des Subprozesses, beendet wird oder weitergeführt werden soll (wiederum mittels XOR-Gateway).

Was benötige ich an Actionhandlern?

Im Subprozess werden am Entscheidungspunkt zwei Handler benötigt:

1. Auf Node-Enter wird mit dem ProcessVariableSetter eine Prozessvariable gesetzt. Für jede Entscheidung wird darin ein anderer Inhalt gesetzt.

Handlerklasse:

com.dooris.bpm.actionhandler.ProcessVariableSetter

Parameter zum Fortführen des Prozesses:

name=prozessBeenden;value=Ja;

Parameter zum Beenden des Prozesses:

name=prozessBeenden;value=Nein;

2. Auf Node-Leave wird die gesetzte Variable mit dem WriteBackProcessVariableHandler an den Hauptprozess übergeben.

Handlerklasse:

com.dooris.bpm.actionhandler.WriteBackProcessVariableHandler

Parameter:

includedVariables=prozessBeenden;

Im Hauptprozess wird, unmittelbar auf den Subprozess folgend, eine XOR-Entscheidung benötigt, um die vom Subprozess übergebene Variable zu überprüfen. Abhängig vom Wert der Variable wird hier nun entschieden, welchen Weg der Prozess einschlagen soll. Dazu wird der VariableDecisionHandler in einem XOR verwendet.

com.dooris.bpm.actionhandler.VariableDecisionHandler

Parameter

NameValue
defaultTransitionNein
processVariableprozessBeenden

Die Angabe der „defaultTransition“ ist optional. Damit wird die der weitere Prozessverlaufs bestimmt, falls keine manuelle Entscheidung getroffen wurde.

Nun müssen den Ausgängen die IDs zugewiesen werden, damit der Prozess den jeweiligen Weg einschlagen kann. Die IDs entsprechen dabei den im Subprozess vergebenen Inhalten („Ja“ oder „Nein“) der Variable „prozessBeenden“ (siehe oben).

Ausgänge

NameID
NeinNein
JaJa

Daraufhin kann der Prozess deployed und gestartet werden.

iGrafX Prozesse:
Hauptptrozess hp_wiki_43_igx.zip
Subprozess sp_wiki_43_igx.zip