Verwenden von Subprozessen in Workflows
Subprozesse sind auf Basis von BPMN (Business Process Model and Notation) erstellte Prozesse, die als Unterprozesse in Ihre Workflows integriert werden und aus diesen heraus gestartet werden können. Außerdem können mithilfe von APIs bzw. Support-Methoden bestimmte Informationen aus den Subprozessen abgefragt oder in den übergeordneten Workflow übergeben werden.
Starten von Subprozessen aus einem Workflow
Gehen Sie dazu vor wie folgt:
- Öffnen Sie den Workflow, dem Sie den Operationsbereich hinzufügen wollen, im Workflow Designer.
-
Wählen Sie innerhalb des Operationsbereichs, in dem Sie einen Subprozess
einbinden wollen, eine freie Fläche und wählen Sie im Kontextmenü auf
Eintrag Verzweigung hinzufügen.
Der Dialog Neue Aktion hinzufügen wird geöffnet. -
Wählen Sie die Aktion StartSubProcess aus und bestätigen mit
OK.
Der Operation Scope mit der Aktion StartSubProcess wird hinzugefügt.
-
Anschließend müssen Sie in der Aktivität operationFlowStartActivity
zwei Anpassungen machen:
- Setzen Sie die Eigenschaft GuiAllowed auf True.
- Wählen Sie für die Eigenschaft ObjectIdentity den Wert PrimaryObjectIdentity aus.
APIs für Subprozesse
In Ihren Workflows haben Sie die Möglichkeit, in Instruction Sets oder Code Activities verschiedene Support-Methoden einzubinden, mit denen Sie bestimmte Informationen aus dem Subprozess abfragen oder für diesen festlegen können.
AreAllSubbeispielsweiseCompleted
Syntax | AreAllSubbeispielsweiseCompleted ( ctx ) |
Beschreibung | Über diese Methode können Sie abfragen, ob alle Subprozesse, die aus dem Hauptprozess gestartet wurden, abgeschlossen sind. |
Parameter | ctx: IcodeContext = Kontext, in dem die Methode aufgerufen wird |
Rückgabewert | Boolean |
MapDataToMainProcess
Syntax | MapDataToMainProcess ( ctx, Case case, ProcessInfo processInfo ) |
Beschreibung | Über diese Methode können Sie konfigurieren, dass die Werte aller Subprozess-Attribute, die im BPMN Modeler in der Richtung „Subprozess >> Hauptprozess“ zugeordnet sind, aus dem Subprozess in den Hauptprozess übertragen werden, wenn der Subprozess abgeschlossen ist. |
Parameter | ctx: IcodeContext = Kontext, in dem die Methode aufgerufen wird case: Vorgang, aus dem der Subprozess gestartet wurde processinfo: Variable, die Instanzinformationen zum untergeordneten Prozess enthält |
Rückgabewert | Boolean |
StartSubProcess
Syntax |
|
Beschreibung | Über diese Methode können Sie konfigurieren, dass ein Subprozess gestartet wird. Außerdem prüft diese Methode bei der Verwendung von Dynamic Lanes, ob zu dem angegebenen Assoziationspfad ein Personenobjekt gefunden werden kann. Nur wenn ein Personenobjekt gefunden wird (also der Rückgabewert True ist), kann der Subprozess gestartet werden. |
Parameter | ctx: IcodeContext = Kontext, in dem die Methode aufgerufen wird instance: Vorgang, aus dem der oder die Subprozesse gestartet werden subProcessName: Definitionsname des zu startenden Subprozesses (kann beispielsweise über eine API ermittelt werden) StartContentID überträgt die Werte der StartContent-Attribute des Subprozesses aus dem Web Shop in den Subprozess. Dieser Parameter kann somit nur in einem Workflow verwendet werden, der über den Web Shop gestartet wird. |
Rückgabewert | Boolean True=Zu dem angegebenen Assoziationspfad konnte ein Personenobjekt gefunden werden. Der Subprozess wird gestartet. (Werden keine Dynamic Lanes verwendet, ist der Rückgabewert immer True.) False=Zu dem angegebenen Assoziationspfad kann kein Personenobjekt gefunden werden. Der Subprozess wird nicht gestartet. |