WebSphere Message Broker Version 8.0.0.5 Betriebssysteme: AIX, HP-Itanium, Linux, Solaris, Windows, z/OS

Sehen Sie sich die Informationen zur aktuellen Produktversion im IBM Integration Bus Version 9.0 an.

Ausdrücke für Datensatzauswahl

Mit dem Ausdruck für die Datensatzauswahl kann ein Datensatz in einer Datei ausgewählt und an den restlichen Nachrichtenfluss weitergegeben werden.

Die einzelnen Datensätze werden mit dem Ausdruck verglichen; der erste Datensatz, bei dem die Auswertung den Wert 'true' ergibt, wird an das Ausgangsterminal weitergegeben. Sie können den Ausdruck auf jeden gültigen XPath-Ausdruck setzen, der einen booleschen Wert zurückgibt. Der Ausdruck wird nicht verwendet, wenn Gesamte Datei für die Option Datensatzerkennung ausgewählt ist.

Im Ausdruck verwendete Korrelationsnamen

Die folgenden Korrelationsnamen können im Ausdruck verwendet werden:
InputRoot und InputLocalEnvironment
Input-Namen beziehen sich auf die eingehende Nachricht, die über das Eingangsterminal im Knoten eintrifft.
ResultRoot
Der Name ResultRoot bezieht sich auf die Nachricht, die anhand des aktuellen Datensatzes in der Datei erstellt wird.
OutputRoot
Der Name OutputRoot bezieht sich auf die Nachricht, die weitergegeben wird, wenn die Auswertung des Ausdrucks den Wert 'true' ergibt. Dieser Vorgang ist mit ResultRoot identisch, sofern die Position der Ausgangs- oder Ergebnisdaten nicht geändert wurde, um die in der Datei gefundene Ergebnisnachricht an eine andere Stelle in der abgehenden Nachricht zu kopieren.
OutputLocalEnvironment (Lokale Umgebung der Ausgabe)
OutputLocalEnvironment enthält die normale lokale Umgebung, die an das Ausgangsterminal weitergegeben wird und hilfreiche Informationen wie beispielsweise die Nummer des Datensatzes und den Offset des Datensatzes enthält.

Zusammen mit einem gültigen XPath-Ausdruck kann anhand einer beliebigen Kombination aus Daten in diesen Korrelationsnamen festgestellt werden, ob der Datensatz weitergegeben werden soll.

Beispiele

Ausdruck:
$InputRoot/XMLNSC/Invoice/AccountNumber=$ResultRoot/XMLNSC/Data/Key

In diesem Beispiel handelt es sich bei allen Datensätzen um ein gültiges XML-Dokument. Der FileRead-Knoten liest die einzelnen Datensätze aus der Datei. In der eingehenden Nachricht vergleicht der FileRead-Knoten das Feld '/Data/Key' mit dem Feld '/Invoice/AccountNumber'. Stimmt der Ausdruck überein, wird er an das Ausgangsterminal weitergegeben.

Ausdruck:
$OutputLocalEnvironment/File/Read/RecordNumber=5

Der FileRead-Knoten liest die einzelnen Datensätze aus der Datei und prüft, ob die Datensatznummer gleich '5' ist. Wenn der fünfte Datensatz erreicht wird, wird dieser weitergegeben.

Abgehende Nachricht anhand einer Kombination aus einer eingehenden Nachricht und einem Datensatz aus einer Datei erstellen

Der FileRead-Knoten liest einen Datensatz aus einer Datei und verbindet diesen mit der Nachricht, die im Knoten eintrifft. Standardmäßig wird die Nachricht durch den Inhalt des aus der Datei ausgelesenen Datensatzes ersetzt. Über die Eigenschaften in der Ergebnisanzeige können Sie jedoch vorgeben, wie der Inhalt der eingehenden Nachricht und der Dateidatensatz kombiniert werden sollen. Der Knoten hat drei logische Baumstrukturen:
Eingabe
Die Eingabenachrichtenkomponente enthält alle Daten in der eingehenden Nachricht und stellt die Basis des weitergegebenen Datensatzes dar.
Ergebnis
Die Ergebnisnachrichtenkomponente enthält den aus der Datei ausgelesenen Datensatz.
Ausgabe
Die Ausgabenachrichtenkomponente ist das eigentliche Objekt, das aus dem Knoten weitergegeben wird.

Standardmäßig wird die Ausgabenachrichtenkomponente erstellt, indem die Eingabenachrichtenkomponente in die Ausgabenachrichtenkomponente kopiert wird. Der Datenteil der Ausgabenachrichtenkomponente wird anschließend durch den Inhalt der Ergebnisnachrichtenkomponente ersetzt und 'OutputLocalEnvironment' wird anhand der Informationen darüber, was im Knoten geschehen ist, aktualisiert.

Dieses Verhalten kann über die folgenden Eigenschaften in der Ergebnisanzeige geändert werden:
Position für Ergebnisdaten
Gibt an, welcher Teil des gelesenen Datensatzes in die Ausgabenachricht kopiert wird. Standardmäßig wird mit 'Position für Ergebnisdaten' alles aus 'ResultRoot' kopiert; dies kann jedoch dahingehend geändert werden, dass nur ein Teil des Datensatzes kopiert wird. Beispiel: Mit 'ResultRoot.XMLNSC.Invoice.Name' wird das Namensfeld aus dem ausgewählten Datensatz in die Ausgabenachricht kopiert.
Position für Ausgabedaten
Gibt an, an welche Stelle der Datensatz in die abgehende Nachricht kopiert wird. Standardmäßig wird mit 'Position für Ausgabedaten' alles in 'OutputRoot' kopiert. Die angegebene Position kann sich im Datenabschnitt der Nachricht (unterhalb von 'ResultRoot') oder in einer anderen Ausgabebaumstruktur wie 'OutputLocalEnvironment' befinden. Beispiel: Datensatz in ein Feld im Nachrichtenhauptteil kopieren: 'OutputRoot.XMLNSC.Invoice.Data'; Ergebnis in die lokale Umgebung kopieren: 'OutputRoot.Variables.Invoice.data'.
Lokale Umgebung kopieren
Die lokale Umgebung wird aus 'InputLocalEnvironment' kopiert. Wird diese Option nicht ausgewählt, wird 'InputLocalEnvironment' direkt, d. h. ohne Kopieren verwendet. Mit dieser Option können Knoten vor dem FileRead-Knoten Änderungen an der lokalen Umgebung feststellen.
Mit den folgenden Optionen beispielsweise wird das Namensfeld aus einem Datensatz in die abgehende Nachricht kopiert. Der übrige Teil der Ausgabennachricht basiert auf der Eingabenachricht:
Result data location= ResultRoot.XMLNSC.Invoice.Name
Output data location= OutputRoot.XMLNSC.Invoice.Name
Mit den folgenden Optionen wird der Nachrichtenhauptteil aus einem Datensatz in die abgehende lokale Umgebung kopiert. Die Ausgabenachricht ist mit der Eingabenachricht identisch:
Result data location= ResultRoot.XMLNSC.Invoice
Output data location= OutputLocalEnvironment.Variables.Invoice
Bemerkungen | Marken | Downloads | Bibliothek | Support | Feedback

Copyright IBM Corporation 1999, 2014Copyright IBM Corporation 1999, 2014.

        
        Letzte Aktualisierung:
        
        Letzte Aktualisierung: 2015-02-28 16:22:41


KonzeptthemaKonzeptthema | Version 8.0.0.5 | bc34095