Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
software:tim:bausteine:subprocess_ends_main_process_igrafx [2014/01/13 15:55] martin.oehm |
software:tim:bausteine:subprocess_ends_main_process_igrafx [2021/07/01 09:52] |
||
---|---|---|---|
Zeile 1: | Zeile 1: | ||
- | ==== 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 [[software:tim:actionhandler:processvariablesetter|ProcessVariableSetter]] eine Prozessvariable gesetzt. Dies ist für beide Entscheidungen notwendig. | ||
- | |||
- | **Handlerklasse:** | ||
- | <code> | ||
- | com.dooris.bpm.actionhandler.ProcessVariableSetter | ||
- | </code> | ||
- | |||
- | **Parameter zum Fortführen des Prozesses:** | ||
- | <code> | ||
- | name=prozessBeenden;value=Ja; | ||
- | </code> | ||
- | **Parameter zum Beenden des Prozesses:** | ||
- | <code> | ||
- | name=prozessBeenden;value=Nein; | ||
- | </code> | ||
- | {{ :software:tim:bausteine:sp_stops_hp_1.png?300|}} | ||
- | {{ :software:tim:bausteine:sp_stops_hp_2.png?300|}} \\ \\ \\ \\ \\ \\ \\ \\ \\ \\ \\ \\ | ||
- | |||
- | |||
- | |||
- | 2. Auf Node-Leave wird die gesetzte Variable mit dem [[software:tim:actionhandler:WriteBackProcessVariableHandler |WriteBackProcessVariableHandler ]]an den Hauptprozess übergeben. | ||
- | |||
- | **Handlerklasse:** | ||
- | <code> | ||
- | com.dooris.bpm.actionhandler.WriteBackProcessVariableHandler | ||
- | </code> | ||
- | |||
- | **Parameter:** | ||
- | <code> | ||
- | includedVariables=prozessBeenden; | ||
- | </code> | ||
- | ------ | ||
- | **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. Um die im Subprozess gesetzte Prozessvariable auszuwerten, wird der [[software:tim:actionhandler:smartformdecissionhandler|SmartformDecissionHandler]] im XOR verwendet. Dabei wird der vom Subprozess gesetzte Wert in der Variable "prozessBeenden" vom XOR im Hauptprozess überprüft. Dieser leitet den Prozess, abhängig vom gesetzen Wert, in die entsprechende Richtung weiter. | ||
- | |||
- | {{ :software:tim:bausteine:SP_stops_HP_3.png?300|}} | ||
- | |||
- | Mit einem Doppelklick auf das XOR-Symbol öffnet sich das Fenster der Symboleigenschaften. Unter dem Menüpunkt "Ausführung" kann ein Handler hinzugefügt werden. Im Feld Handler wird die Handlerklasse geschrieben. | ||
- | |||
- | <code> | ||
- | com.dooris.bpm.actionhandler.SmartFormDecissionHandler | ||
- | </code> | ||
- | |||
- | Um die Variablen nun aus dem Subprozess zu übernehmen, müssen folgende Attribute hinzugefügt werden: \\ \\ | ||
- | |||
- | **Parameter** | ||
- | ^ Name ^ Value ^ | ||
- | | defaultTransition | Nein | | ||
- | | processVariable | prozessBeenden | | ||
- | |||
- | Die Funktion der "defaultTransition" ist optional. Damit wird die Richtung des weiteren Prozessverlaufs bestimmt, falls manuell keine Entscheidung getroffen wurde.\\ \\ | ||
- | Nun müssen noch die Ausgänge hinzugefügt und diesen die entsprechenden ID´s zugewiesen werden. Die ID´s beziehen sich hierbei auf die im Subprozess zugewiesenen Werte (siehe oben). | ||
- | |||
- | **Ausgänge** | ||
- | ^ Name ^ ID ^ | ||
- | | Nein | Nein | | ||
- | | Ja | Ja | | ||
- | |||
- | Daraufhin kann der Prozess deployet und gestartet werden. | ||
- | |||
- | iGrafX Prozesse: (siehe Zip-Files) \\ | ||
- | **Hauptptrozess:** {{:software:tim:bausteine:hp_wiki_43_igx.zip|}} \\ | ||
- | **Subprozess:** {{:software:tim:bausteine:sp_wiki_43_igx.zip|}} |