Mit Engine-Daten arbeiten
Die Engine liefert je nach Aufruf unterschiedliche Daten. Diese Beispiele zeigen, was du an den Client übergibst, was zurückkommt und wie du damit weiterarbeitest. Sie verwenden den offiziellen TypeScript Client. Aufrufe in Python und .NET sind auf den jeweiligen Client-Seiten beschrieben.
1. Aufrufen
const start = await
client.processModels
.startProcessInstance({
processModelId: 'Bestellung',
initialToken: {
bestellnummer: 'B-1042'
},
});2. Ergebnis lesen
{
"processInstanceId": "pi-1042",
"correlationId": "cor-1042"
}3. Weiterarbeiten
const { processInstances } = await
client.processInstances.query({
processInstanceId:
start.processInstanceId,
});Drei Ebenen, die du unterscheiden musst
BPMN-Modell: Eine UserTask im Diagramm legt fest, was die Engine ausführen soll. Die BPMN-Modellstruktur hilft beim Lesen geparster Modelle.
Laufzeitinstanz: Eine UserTaskInstance beschreibt eine konkrete, wartende Aufgabe. Ihre userTaskConfig.formFields sind für eine Aufgabenoberfläche relevant.
Prozessdaten: initialToken, tokenPayload, Event-payload und ausgefüllte Formularwerte enthalten Daten deines Prozesses. Die Engine gibt dafür eine Hülle vor, aber keine global festen Fachfelder.
Wähle deinen Ablauf
- Prozess starten und Ergebnis verwenden: Startoptionen, sofortige Antwort, Abfrage und Endergebnis.
- User Tasks anzeigen und abschließen: Aufgabenliste, Formularfelder und Ergebniswerte.
- Nachrichten und Signale senden: Event-Abfrage, Korrelation und Payload.
Die Ablaufbeispiele zeigen nur die relevanten Felder. Für User Tasks gibt es den vollständigen öffentlichen UserTaskInstance-Vertrag mit Feldbeschreibungen, JSON Schema und geprüftem Beispiel. Weitere Verträge folgen; bei anderen Engine- oder Client-Versionen können einzelne Felder abweichen.