PredefinedDecisionHandler

Der PredefinedDecisionHandler wird für die Steuerung eines Prozess eingesetzt. D.h. für jedes XOR-Gateway der Prozessinstanz kann bereits im Voraus festgelegt werden, welcher Ausgang verfolgt wird. Wie im folgenden Beispiel zu sehen ist, kann der Prozessverlauf auch anhand des ersten XOR-Gateways vorbestimmt werden. Alle nachfolgenden XOR-Gateways verhalten sich der ersten Entscheidung entsprechend.

Klasse

com.dooris.bpm.actionhandler.PredefinedDecisionHandler

Attribute des XOR-Gateway

variableName

Hier wird ein beliebiger Variablenname hinterlegt. Wird in jedem XOR-Gateway die gleiche Variable verwendet, wird für jedes XOR-Gateway, der in der Prozesssteuerung festgelegte Ausgang gewählt (s. Beispiel).

Durchlauf des Prozesses in TIM

Nachdem die erste Aktivität

Ausgänge

Für die Ausgänge des XOR-Gateways sollten aussagekräftige Namen definiert werden. Die IDs müssen hingegen angegeben werden.

Beispiel- Produktionsprozess

Das folgende Beispiel zeigt einen fiktiven Prozess zur Herstellung von Leuchtmitteln. Während der Produktion werden entweder Stehleuchten oder Schreibtischleuchten hergestellt. Mit dem PredefinedDefinitionHandler kann bereits mit dem ersten XOR-Gateway der gesamte weitere Verlauf des Prozesses gesteuert werden.

Einsetzen des Handlers

Der PredefinedDecisionHandler wird, ähnlich wie der VariableDecisionHandler, in einem XOR-Gateway gesetzt. Die ActionHandler-Klasse wird in das Textfeld Handler geschrieben. Wie bereits oben beschrieben, benötigt der Handler den Parameter variableName, der im vorliegenden Beispiel den Wert Modell beinhaltet (s. Screenshot). Der Wert von variableName kann beliebig gewählt werden, sollte aber möglichst aussagekräftig sein. Abschließend müssen die Ausgänge des XOR-Gateways definiert werden. Hier empfiehlt es sich wieder Ausdrücke zu wählen, die den zu verfolgenden Prozesspfad beschreiben. Im Fall des Leuchtmittelproduktionsprozesses wurde Stehleuchte und Schreibtischleuchte gewählt.

Anpassen weiterer XOR-gateways

Um zu gewährleisten, dass der Prozessverlauf mit dem ersten XOR-Gateway gesteuert werden kann, muss das zweite XOR-Gateway ebenfalls angepasst werden. Im Leuchtmittelproduktionsprozess soll entweder eine Stehleuchte oder eine Schreibtischleuchte hergestellt werden. Das zweite XOR-Gateway erhält folglich die gleichen Parameter, wie das erste XOR-Gateway (s. Screenshot).

Prozesssteuerung in TIM

Nach dem Prozessstart muss im Prozessmanager Client unter Prozesssteuerung festgelegt werden, welcher Prozesspfad eingeschlagen wird. Im Beispiel des Leuchtmittelproduktionsprozesses wird folglich bestimmt, ob eine Steh- oder eine Schreibtischleuchte erstellt wird.
Erreicht der Prozess das zweite XOR-Gateway wird die gleiche Entscheidung, wie beim ersten Gateway getroffen.

Spezialfall: Mehrere Entscheidungen

In einer neuen Version des Leuchtmittelproduktionsprozesses gibt es sowohl Stehleuchten mit 100W Birnen und großem Standfuß als auch mit 60W Birnen und kleinem Standfuß. Folglich werden dafür zwei weitere XOR-Gateways benötigt.
Die beiden neuen XOR-Gateways werden per PredefinedDecisionHandler verbunden, die Entscheidung über der Größe der Lampe wirkt sich somit auch auf die Wahl des Standfußes der Leuchte aus.

Prozesssteuerung in TIM

Im Reiter Prozesssteuerung müssen folglich zwei Variablen belegt werden Modell und Groesse (s. Screenshot).