Nachrichtenfluss entwickeln, der andere Knoten enthält

Dies ist der erste Abschnitt des Szenarios zum Ausführen einer Erweiterung einfacher Nachrichteninhalte. Dieses Thema veranschaulicht folgende Prozeduren:
  1. Erstellen Sie in der Ansicht 'Brokeranwendungsentwicklung' folgende Ressourcen:
    • ein Nachrichtengruppenprojekt und eine Nachrichtengruppe namens 'MAPPING3_COMPLEX_messages'. Stellen Sie dabei sicher, dass die Nachrichtengruppe für Namespaces mit physischem XML-Format aktiviert ist,
    • eine Nachrichtendefinitionsdatei namens 'COMPLEX' mit dem Ziel-Namespace 'www.complex.net' und dem Präfix 'comp'
  2. Erstellen Sie die Nachrichten 'addev1', 'addev1s' und 'addev1n' mit folgenden Strukturen:
    addev1
       bool      (xsd:boolean) lokales Element
       bin        (xsd:hexBinary) lokales Element
       dat        (xsd:dateTime) lokales Element
       dec       (xsd:decimal) lokales Element
       dur                      (xsd:duration) lokales Element
       flt          (xsd:float) lokales Element
       int         (xsd:int) lokales Element
       str         (xsd:string) lokales Element   
    addev1s
       bin        (xsd:hexBinary) lokales Element
       dat        (xsd:dateTime) lokales Element
       dur                      (xsd:duration) lokales Element
       str         (xsd:string) lokales Element
    addev1n
       dec       (xsd:decimal) lokales Element
       flt          (xsd:float) lokales Element
       int         (xsd:int) lokales Element
  3. Erstellen Sie ein Nachrichtenflussprojekt namens 'MAPPING3_COMPLEX_flows'.
  4. Erstellen Sie einen Nachrichtenfluss namens 'addev1' mit folgendem Inhalt:
    MQEmpfangsknoten ->Filterknoten -> Zuordnungsknoten -> Rechenknoten
                         \ \ --> RCD -> MQOutput
                          \-> Mapping1-----------/
  5. Geben Sie im Filterknoten folgende ESQL an:
    IF Body.bool THEN
                                        RETURN TRUE;
                   ELSE
                         RETURN FALSE;
            END IF;
  6. Öffnen Sie im Zuordnungsknoten, der mit dem True-Terminal des Filterknotens (Mapping1) verbunden ist, die Zuordnung, und wählen Sie 'addev1' als Quelle und 'addev1s' als Ziel aus.
  7. Verbinden Sie die Quelle mit dem Ziel wie folgt:
    bin --- bin
    dat --- dat
    dur --- dur
    str --- str
  8. Erweitern Sie im Spreadsheetfenster die Eigenschaften, und richten Sie folgende Werte ein:
    MessageType   |     'addev1s'
  9. Klicken Sie mit der rechten Maustaste auf das Ziel 'dat', und wählen Sie dann die Option If aus.
  10. Ersetzen Sie die Bedingung 'fn:true()' durch $source/comp:addev1/str = 'dat'.
  11. Setzen Sie den Wert für 'dat' auf $source/comp:addev1/dat + xs:duration("P3M").
  12. Klicken Sie mit der rechten Maustaste auf die Bedingung, und wählen Sie dann die Option Else aus.
  13. Klicken Sie mit der rechten Maustaste auf das Ziel 'dur', und wählen Sie dann die Option If aus.
  14. Ersetzen Sie die Bedingung 'fn:true()' durch $source/comp:addev1/str = 'dur'.
  15. Setzen Sie den Wert für 'dur' auf $source/comp:addev1/dur + xs:duration("P1Y").
  16. Klicken Sie mit der rechten Maustaste auf die Bedingung, und wählen Sie dann die Option Else aus.
  17. Öffnen Sie die Zuordnung für den Knoten, der mit dem False-Terminal des Filterknotens (Mapping) verbunden ist, und wählen Sie 'addev1' als Quelle und 'addev1n' als Ziel aus.
  18. Verbinden Sie die Quelle mit dem Ziel wie folgt:
    dec --- dec
    flt --- flt
    int --- int
  19. Erweitern Sie im Spreadsheetfenster die Eigenschaften, und richten Sie folgende Werte ein:
    MessageType     |     'addev1n'
  20. Setzen Sie die ESQL im Rechenknoten auf:
    CALL CopyMessageHeaders();
            SET OutputRoot.MRM.dec = InputBody.dec * 10;
            SET OutputRoot.MRM.flt = InputBody.flt * 10;
            SET OutputRoot.MRM.int = InputBody.int * 10;
  21. Setzen Sie im Knoten 'Deskriptor_für_Neuanalyse' die Nachrichtendomäne auf XMLNS, und aktivieren Sie das Kontrollkästchen Nachrichtendomäne zurücksetzen.
  22. Erstellen Sie drei Instanznachrichten mit den entsprechenden RFH2-Headern:
    <comp:addev1 xmlns:comp="http://www.complex.net">
    <bool>1</bool>
    <bin><![CDATA[010203]]></bin>
    <dat>2005-05-06T00:00:00+00:00</dat>
    <dec>19.34</dec>
    <dur>P2Y4M</dur>
    <flt>3.245E+2</flt>
    <int>2104</int>
    <str>dat</str>
    </comp:addev1>
    <comp:addev1 xmlns:comp="http://www.complex.net">
    <bool>1</bool>
    <bin><![CDATA[010203]]></bin>
    <dat>2005-05-06T00:00:00+00:00</dat>
    <dec>19.34</dec>
    <dur>P2Y4M</dur>
    <flt>3.245E+2</flt>
    <int>2104</int>
    <str>dur</str>
    </comp:addev1>
    <comp:addev1 xmlns:comp="http://www.complex.net">
    <bool>0</bool>
    <bin><![CDATA[010203]]></bin>
    <dat>2005-05-06T00:00:00+00:00</dat>
    <dec>19.34</dec>
    <dur>P2Y4M</dur>
    <flt>3.245E+2</flt>
    <int>2104</int>
    <str>dat</str>
    </comp:addev1>
Sie haben folgende Ressourcen erstellt:
Setzen Sie nun die Nachrichtengruppe und den Nachrichtenfluss ein.

Nachrichtengruppe und Nachrichtenfluss einsetzen

Dies ist der zweite Abschnitt des Szenarios zum Ausführen einer Erweiterung einfacher Nachrichteninhalte. Dieser Abschnitt veranschaulicht, wie Sie die Nachrichtengruppe und den Nachrichtenfluss einsetzen und die Instanznachrichten über den Broker ausführen können.
  1. Erstellen Sie eine BAR-Datei namens 'addev1'.
  2. Fügen Sie die Nachrichtengruppe 'MAPPING3_COMPLEX_messages' und den Nachrichtenfluss 'addev1' zur BAR-Datei hinzu.
  3. Setzen Sie die BAR-Datei für den Broker ein.
  4. Stellen Sie die Instanzdokumente in die Eingabewarteschlange.
Die Ausgabenachrichten sehen wie folgt aus:
<comp:addev1s xmlns:comp="http://www.complex.net">
<bin><![CDATA[010203]]></bin>
<dat>2005-08-06T00:00:00-01:00</dat>
<dur>P2Y4M</dur>
<str>dat</str>
</comp:addev1s>
Bemerkungen | Marken | Downloads | Bibliothek | Unterstützung | Rückmeldung
Copyright IBM Corporation 1999, 2006 Letzte Aktualisierung: 23. Aug. 2006
ar25251_1_