Daten eines Prozesses als
Containerelemente definieren
Damit ein Integrationsprozess Daten, wie z. B. Messages, Zähler usw. korrekt verarbeiten kann, müssen Sie die Daten zunächst in Form von Containerelementen definieren. Containerelemente sind mit Variablen einer Programmiersprache vergleichbar.
Sie definieren Containerelemente zur Designzeit. Zur Laufzeit enthalten die Containerelemente dann Referenzen auf die entsprechenden Daten. Für einen Empfangsschritt müssen Sie z. B. ein Containerelement für die zu empfangende Message definieren und dieses Containerelement in den Eigenschaften des Empfangsschritts angeben. Zur Laufzeit enthält dieses Containerelement dann eine Referenz auf die empfangene Nachricht.
Bei der Definition eines Containerelements geben Sie seinen Namen, eine Kategorie und einen Typ an. Zur Laufzeit kann das Containerelement dann einen Wert des entsprechenden Typs referenzieren.
Ein Containerelement für eine Zählervariable muss z. B. die Kategorie Einfacher XSD-Datentyp und den Datentyp integer haben. Ein Containerelement für eine Message muss z. B. die Kategorie Abstraktes Interface haben und ein entsprechendes Service-Interface bzw. eine Operation eines Services-Interfaces referenzieren.
Folgende Tabelle zeigt die möglichen Kategorien:
Kategorie |
Verwendung |
Abstraktes Interface |
Für Messages, die über das entsprechende asynchrone abstrakte Interface definiert sind und die Sie z. B. in Empfangs- oder Sendeschritten verwenden. Ein Integrationsprozess kann nur Interfaces der eigenen Software-Komponentenversion referenzieren. Weitere Informationen: |
Einfacher XSD-Datentyp |
Für Prozesssteuerungselemente, wie z. B. Zähler, die Sie z. B. in Containeroperationen verwenden. Weitere Informationen: |
Empfänger |
Für eine Empfängerliste, die über einen Empfängerermittlungsschritt ermittelt wird und die Sie z. B. in einem Sendeschritt verwenden. |
Ein Containerelement kann ein- oder mehrzeilig sein. Ein mehrzeiliges Containerelement ist eine Tabelle aus Elementen desselben Typs. Wenn Sie z. B. Messages in einem Containerelement sammeln möchten, müssen Sie dieses Element als mehrzeiliges Containerelement definieren.
Die Sichtbarkeit und Gültigkeit von Containerelementen steuern Sie über Blöcke. Der Prozess und seine Blöcke verfügen jeweils über einen eigenen Container.
Bei geschachtelten Blöcken gilt:
● Containerelemente eines übergeordneten Blocks sind in untergeordneten Blöcken sichtbar und können dort gelesen und geschrieben werden.
● In einem untergeordneten Block können Sie zusätzliche Containerelemente für lokale Variablen definieren. Diese sind in übergeordneten Blöcken nicht sichtbar.
Weitere Informationen: Block
1. Definieren Sie im Objektbereich des Prozess-Editors die benötigten Containerelemente.
Containerelemente, die im gesamten Integrationsprozess zur Verfügung stehen sollen, definieren Sie im Prozesscontainer. Containerelemente, die nur in einem bestimmten Block bzw. seinen untergeordneten Blöcken zur Verfügung stehen sollen, definieren Sie im entsprechenden Blockcontainer.
Weitere Informationen: Prozess-Editor
2. Geben Sie an, welcher Schritt das jeweilige Containerelement verarbeitet.
Dazu geben Sie das Containerelement in den Eigenschaften des entsprechenden Schritts an. Wenn Sie z. B. ein Containerelment Message für eine zu sendende Message definiert haben, geben Sie dieses Containerelement in den Eigenschaften des entsprechenden Sendeschritts an.
3. Um einem Containerelement zur Laufzeit einen Wert zuweisen, verwenden Sie an der entsprechenden Stelle des Integrationsprozesses einen Schritt des Typs Containeroperation.
Weitere Informationen: Containeroperation
4. Auf diese Weise können Sie z. B. einen Zähler erhöhen oder eine Message an eine Liste von Messages anhängen.