Freigeben über


BAM-Konzepte für Entwickler

Als BAM-Entwickler müssen Sie mit wichtigen BAM-Konzepten wie Aktivitäten, Fortsetzungen und Verweisen vertraut sein. Außerdem sollten Sie die Unterschiede zwischen Überwachen und transaktionaler Verarbeitung verstehen.

Was ist eine BAM-Aktivität?

Eine BAM-Aktivität ist die Definition der für ein Element wichtigen Daten im Geschäftsprozess (z. B. einer einzelnen Bestellung). Sie definiert die Spalten in der BAM-Datenbank.

Eine Instanz einer Aktivität stellt eine Arbeitseinheit in einen Geschäftsprozess dar, z. B. eine Bestellung oder einen Darlehensantrag. Eine Aktivität gibt eine Liste von Meilensteinen (den Verlauf der Aktivität) und relevante Daten an. Eine Instanz einer Aktivität wird als einzelne Zeile in der primären BAM-Importdatenbank festgelegt. Es ist jeweils nur genau ein Wert für sämtlichen Datenelemente dieser Instanz der Aktivität vorhanden.

Aktivitäten zeigen dem Endbenutzer im Unternehmen oder dem Information Worker den Verlauf (Meilensteine) und die Daten zu dieser Arbeitseinheit dar. Die im BAM SDK-Beispiel definierte Aktivität enthält z. B. Meilensteine mit Informationen über geleistete Zahlungen und Lieferungen sowie relevante Daten wie den Gesamtbetrag.

BAM-Aktivitäten sind häufig direkt einem Geschäftsprozess zugeordnet, obwohl sie als Abstraktion auf hoher Ebene unabhängig von der tatsächlichen Implementierung der IT-Infrastruktur sind.

Ihre Aufgabe als Entwickler besteht darin, diese Abstraktion beizubehalten, indem Sie nur die relevanten Meilensteine und Daten aus der Implementierung im Kontext einer bestimmten Aktivität anzeigen.

Was ist eine Fortsetzung?

Mit Fortsetzungen (Continuation) werden die folgenden Informationen zur BAM-Infrastruktur hinzugefügt:

  • Die Reihenfolge, in der Ereignisse auftreten werden.

  • Eine Möglichkeit, Änderungen an der eindeutigen ID vorzunehmen, mit der Ereigniselemente korreliert werden

    Weitere Informationen zu Fortsetzungen und deren Verwendung finden Sie unter Continuation und ContinuationID-Knoten.

Was ist ein Verweis?

Ein Verweis (oder verwandte Aktivität) gibt eine Beziehung zwischen einer Aktivität und einem anderen Element an. Beispiele für verwandte Elemente sind andere Aktivitäten oder ein Dokumentspeicherort.

Hinweis

Wenn Sie eine Aktivität als verwandte Aktivität angeben, wird die aktuelle Aktivität im Gegensatz zu einer Fortsetzungsaktivität nicht aus der Kompilierung ausgeschlossen, wenn die verwandte Aktivität noch nicht abgeschlossen wurde.

Überwachung und transaktionale Verarbeitung

Über das Schreiben von Code für BAM können Sie auch die Art und Weise steuern, wie Daten verfolgt werden, d. h., ob dies per Überwachung oder per transaktionaler Verarbeitung geschieht. In der Standardeinstellung haben Überwachung und Verarbeitung in BAM die gleiche Priorität. Das bedeutet, bei einem Fehler in der Überwachungsfunktion oder im transaktionalen Prozess kann keiner der beiden Vorgänge fortgesetzt werden. Es erfolgt keine Aufzeichnung in der Überwachungsdatenbank, und für die Transaktion wird ein Rollback ausgeführt. Dies ist möglicherweise nicht Methode, die Sie zur Überwachung für Ihre Lösung bevorzugen. Wenn Sie für BAM entwickeln, können Sie festlegen, ob die Überwachung oder die transaktionale Verarbeitung Vorrang erhält.

In der folgenden Tabelle werden die Modi für Überwachungsdaten in BAM beschrieben.

Szenario Beschreibungen
Überwachung vor Verarbeitung Wenn der Prozess erfolgreich ausgeführt wird, werden Überwachungsinformationen geschrieben.

Wenn ein Fehler während des Prozesses auftritt, werden Informationen über den Fehler geschrieben.
Verarbeitung und Überwachung gleichberechtigt Wenn die Überwachung oder Verarbeitung fehlschlägt, wird ein Rollback für den gesamten Vorgang ausgeführt.
Verarbeitung vor Überwachung Wenn der Prozess erfolgreich ausgeführt wird, die Überwachungsfunktion hingegen fehlschlägt, wird die Verarbeitung fortgesetzt.