Show TOC Anfang des Inhaltsbereichs

Vorgehensweisen Ausdruckseditor verwenden Dokument im Navigationsbaum lokalisieren

Verwendung

Mit dem Ausdruckseditor können Sie Ausdrücke definieren bzw. auswählen. Sie haben folgende Möglichkeiten:

·        Konstante definieren

·        Variablen (Containerelemente) auswählen

·        Auf ein bestimmtes Feld einer Message zugreifen

Um Ihnen die Eingabe zu erleichtern, passt sich das Aussehen des Ausdruckseditors automatisch an die aktuelle Situation an: Der Ausdruckseditor zeigt nur die Felder, die in der aktuellen Situation relevant sind. Daher können Sie nicht immer alle der genannten Funktionen ausführen.

Vorgehensweise

Konstante definieren

Konstanten definieren Sie z. B. um den Vergleichswert für eine Bedingung zu definieren.

...

       1.      Geben Sie den Namen für die Konstante ein.

       2.      Wählen Sie den entsprechenden XSD-Datentyp (siehe auch: Verwendbare XSD-Datentypen).

Variable auswählen

...

       1.      Wählen Sie die gewünschte Variable aus.

Folgende Variablen können zur Auswahl stehen:

¡        Einfache Variable: Zeigt Containerelemente der Kategorie Einfacher Typ, die z. B. für Zähler verwendet wird.

¡        Empfänger: Zeigt Containerelemente der Kategorie Empfänger, die für Empfänger von Messages verwendet wird.

¡        Interface-Variable: Zeigt Containerelemente der Kategorie Abstraktes Interface, die für Messages verwendet wird.

       2.      Ist die Variable als Liste definiert, geben Sie im Feld Index die Position der Liste an, auf die Sie zugreifen möchten.

Sie können die Position als Ganzzahl eingeben (z. B. 2 für die zweite Position der Liste) oder den Ausdruck auswählen, der die gewünschte Position liefert.

Eine Variable ist eine Liste, wenn bei der Definition der Variable im Container das Kennzeichen Mehrzeilig gesetzt wurde.

Auf ein Feld einer Message zugreifen

Auf ein bestimmtes Feld einer Message können Sie über ein Kontextobjekt oder die Angabe des XPath zugreifen.

...

       1.      Wählen Sie die gewünschte Interface-Variable aus.

       2.      Legen Sie den Zugriff auf das Feld fest:

¡        Um über ein Kontextobjekt zuzugreifen, wählen Sie das entsprechende Kontextobjekt aus.

Der Ausdruckseditor zeigt die Kontextobjekte, die für das entsprechende Message-Interface definiert sind, und die technischen Kontextobjekte (Namensraum http://sap.com/xi/XI/System).

¡        Um über den XPath zuzugreifen, expandieren Sie die Struktur der Message und doppelklicken auf das gewünschte Feld.

Enthält das Feld eine Struktur, markieren Sie Mehrzeilig.

Hinweis

Ein XPath-Ausdruck ist mehrzeilig, wenn er eine Liste zurückgibt. Wenn das entsprechende Ankreuzfeld markiert ist, wird bei der Auswertung des Ausdruckes berücksichtigt, dass es sich um eine Liste (und nicht einen Einzelwert) handelt.

Beispiel

Die Bedingung <Ausdruck>=a wird unterschiedlich interpretiert, je nachdem, ob der Ausdruck <Ausdruck> als einfach oder mehrzeilig gekennzeichnet ist:

<Ausdruck> einfach: <Ausdruck> ist gleich a

<Ausdruck> mehrzeilig: <Ausdruck> ist eine Liste, die den Wert a enthält

Anmerkungen zur Verwendung von XPath-Ausdrücken

Beachten Sie, dass mit dem Ausdruckseditor erfasste XPath-Ausdrücke nur Items vom Typ Knoten (node, node set) zurückgeben dürfen. Andere Typen (beispielsweise Boolescher Wert (boolean)) sind aus technischen Gründen nicht erlaubt.

Um dennoch komplexere logische Ausdrücke und Bedingungen zu formulieren, können Sie beispielsweise im XPath-Ausdruck Prädikate (Syntax-Bestandteile in eckigen Klammern) verwenden.

Beispiel

Sie möchten folgende Bedingung formulieren: Die Buchungsnummer (BookingNumber) ist größer als 0100.

Da im Bedingungseditor kein Operator > zur Verfügung steht, bietet sich folgende Lösung an: Sie definieren den entsprechenden logischen Ausdruck im Ausdruckseditor mit Hilfe eines XPath-Prädikates und ordnen ihn einem Knotenelement zu. Mit dem Bedingungseditor fragen Sie dann lediglich die Existenz dieses Knotenelementes ab (mit Hilfe des Existenz-Operators (EX)).

Das heißt, Sie erfassen zunächst mit dem Ausdruckseditor den folgenden Ausdruck:

/FlightBookingOrderConfirmation [BookingID/BookingNumber > 0100]

Mit dem Bedingungseditor formulieren Sie dann folgende Bedingung:

(/FlightBookingOrderConfirmation [BookingID/BookingNumber > 0100] EX)

In natürliche Sprache übersetzt, lautet diese Bedingung:

Das Knotenelement FlightBookingOrderConfirmation existiert, für das folgendes gilt: Der Inhalt des Unterelementes BookingID/BookingNumber ist größer als 0100.

Hinweis

Bei einem Ausdruck der folgenden Form /A/B/C = G wird auf den Knoten <C> genau genommen die getText()-Methode angewandt, die den Inhalt dieses Knotens ermittelt.

Ende des Inhaltsbereichs