- Einleitung
- Erste Schritte
- Prozessmodellierung
- Grundlagen der Prozessmodellierung
- Öffnen der Modellierungsarbeitsfläche
- Modellierung Ihres Prozesses
- Ausrichten und Verbinden von BPMN-Elementen
- Autopilot™ for Maestro (Vorschau)
- Prozessimplementierung
- Prozessabläufe
- Prozessüberwachung
- Prozessoptimierung
- Referenzinformationen

Benutzerhandbuch zu Maestro
Unterprozesse
Überblick
Ein Teilprozess ist eine Sammlung anderer Aufgaben und Teilprozesse, die dazu beitragen, einen komplexen Prozess in besser verwaltbare und navigierbare Teile aufzuteilen.
- Wählen Sie eine Aktivität, wenn Sie einen zusätzlichen Prozess entweder innerhalb desselben Projekts oder aus einem separaten Projekt anwenden müssen. Ein solcher agentischer Prozess mit einem unabhängigen Wert kann entweder als eigenständiger Prozess oder von anderen Prozessen aufgerufen werden, was automatisch die Erstellung einer neuen Instanz auslöst.
- Arbeiten Sie mit Teilprozessen, wenn eine bestimmte Logik zur Vereinfachung des übergeordneten Prozesses eingekapselt werden muss. Als inhärenter Bestandteil derselben Instanz trägt der Teilprozess zur Optimierung der Gesamtorchestrierung bei.
Weitere Informationen zur BPMN-Unterstützung finden Sie unter Prozessmodellierung.

Variablen zwischen Teilprozessen übergeben und abrufen
Teilprozesse kapseln wiederverwendbare Logik, müssen jedoch häufig Daten mit dem übergeordneten Prozess oder anderen Teilprozessen austauschen. Maestro bietet klare Regeln dafür, wie Variablen definiert und übergeben werden, damit Ihre Daten über Ebenen hinweg konsistent bleiben.

Zugriff auf Eingaben innerhalb eines Teilprozesses
Um auf die Ausgabe einer vorherigen Aktivität innerhalb desselben Teilprozesses zuzugreifen, ist keine zusätzliche Konfiguration erforderlich.
Beispiel: Wenn die Aktivität foo eine Ausgabevariable mit dem Namen foo_op festlegt und eine nachfolgende Aktivität bar im selben Unterprozess vorhanden ist, kann bar direkt auf foo_op verweisen.
Schlüsselregel: In einer Aktivität definierte Variablen sind für jede nachgelagerte Aktivität innerhalb desselben Unterprozesses zugänglich, einschließlich verschachtelter Elemente. Sie müssen sie nicht explizit als Unterprozesseingaben übergeben.
Anzeigen von Ausgaben eines Teilprozesses
Benötigt ein übergeordneter Prozess Zugriff auf Ausgabedaten einer Aktivität innerhalb eines geschachtelten Teilprozesses, stehen Ihnen zur Bereitstellung zwei Ansätze zur Verfügung.
Ansatz 1: Mithilfe von Ausgabevariablen
- Definieren Sie im inneren Teilprozess eine Ausgabevariable, z. B.
inner_sp_op, und weisen Sie ihr den Wert der Ausgabe der inneren Aktivität (bar_op) zu. - Definieren Sie im äußeren Teilprozess (oder übergeordneten Prozess) eine weitere Ausgabevariable, z. B.
outer_sp_op, und weisen Sie ihr den Wert der Ausgabe des inneren Teilprozesses (inner_sp_op) zu. - Nachgeschaltete Aktivitäten (z. B.
qux) im übergeordneten Prozess können jetzt aufouter_sp_opverweisen.
Ansatz 2: Mithilfe von Endereignisvariablen
-
Konfigurieren Sie im inneren Teilprozess das Endereignis , um eine Ausgabevariable wie
ee_inner_opzu deklarieren, und weisen Sie ihr den Wert vonbar_opzu. -
Konfigurieren Sie im äußeren Teilprozess das entsprechende Endereignis, um eine Ausgabevariable wie
ee_outer_opzu deklarieren und ihr den Wert vonee_inner_opzuzuweisen. -
Aktivität
quxim übergeordneten Prozess kann jetzt aufee_outer_opverweisen.Tipp:Endereignisvariablen werden automatisch an den übergeordneten Scope weitergegeben, ohne dass eine separate Ausgabevariablenkonfiguration erforderlich ist.
Inspektion von Teilprozessvariablen
Sie können Variablenwerte zur Entwurfsphase (über die Debug-API) oder zur Runtime (über die Instanz-API) überprüfen, um den Geltungsbereich und die Datenweitergabe zu verifizieren.
Debug-API – Variablen anzeigen
GET /v1/debug-instances/{instanceId}/variables?parentElementId=outer_subprocess
GET /v1/debug-instances/{instanceId}/variables?parentElementId=outer_subprocess
Verfügbare Variablen:
foo_opinner_subprocess_opee_outer_op
GET /v1/debug-instances/{instanceId}/variables?parentElementId=inner_subprocess
GET /v1/debug-instances/{instanceId}/variables?parentElementId=inner_subprocess
Verfügbare Variablen:
bar_opee_inner_op
Runtime-API – Variablen anzeigen
GET /v1/instances/{instanceId}/variables?parentElementId=outer_subprocess
GET /v1/instances/{instanceId}/variables?parentElementId=outer_subprocess
Verfügbare Variablen:
foo_opinner_subprocess_opee_outer_op
GET /v1/instances/{instanceId}/variables?parentElementId=inner_subprocess
GET /v1/instances/{instanceId}/variables?parentElementId=inner_subprocess
Verfügbare Variablen:
bar_opee_inner_op
Marker für Mehrfachinstanzen
Teilprozesse unterstützen Marker für Mehrfachinstanzen, bei denen jedes Element mehrmals ausgeführt wird. Elemente, die sich als Mehrfachinstanz markieren lassen, können alle Aufgabentypen sein, außer bei Teilprozessen.
Verschachtelte Marker
Folgende Variablen in einer Zeichenfolge werden als verschachtelte Iteratoren unterstützt:
| Kategorie | Attribute | Verwendung/Zugriff |
|---|---|---|
| OuterSP – Abrufen von Kontaktinformationen für jeden Benutzer | InputCollection | var.GetUsers |
| OuterSP – Abrufen von Kontaktinformationen für jeden Benutzer | Iterator-Element | iterator.item.gid |
| InnerSP – Alle E-Mails für jeden Kontakt abrufen | InputCollection | iterator[0].item.contactArray |
| InnerSP – Alle E-Mails für jeden Kontakt abrufen | Iterator-Element | iterator[1].item.ContactId |
| E-Mail senden (Send E-Mail) | InputCollection | iterator[1].item.EmailArray |
| E-Mail senden (Send E-Mail) | Iterator-Element | iterator[2].item.emailAddress |