Dies ist der erste Abschnitt des Szenarios, in dem Sie
einen Broker als Prüffunktion verwenden. In diesem Abschnitt wird veranschaulicht, wie Sie einen Nachrichtenfluss entwickeln, um mehrere Felder mit Eingabedaten einem einzigen Einfügesatz für eine Datenbank zuzuordnen. Des Weiteren erfahren Sie, wie Sie eine andere Tabelle aktualisieren und Datensätze aus einer dritten Tabelle entfernen sowie entsprechende Nachrichtenmodelle und Instanznachrichten entwickeln.
- Erstellen Sie eine Datenbank namens 'MAPDB' und eine Tabelle namens 'CONFIRMATION' mit folgenden Spalten:
RESID INTEGER
- Füllen Sie die Tabelle 'CONFIRMATION' mit den folgenden Werten:
9052
- Erstellen Sie eine weitere Tabelle namens 'RESERVATION' mit folgenden Spalten:
RESID INTEGERNAME VARCHAR(20)
PARTY INTEGER
PAYMENT DECIMAL(8,2)
- Füllen Sie die Tabelle 'RESERVATION' mit den angezeigten Werten:
8214,'ARCHIBALD',2,0.0
2618,'HENRY', 4, 120.0
9052,'THAW', 3, 85.0
- Erstellen Sie eine weitere Tabelle namens 'PROVISIONAL' mit folgenden Spalten:
RESID INTEGER
- Füllen Sie die Tabelle 'PROVISIONAL' mit den angezeigten Werten:
8214 2618
- Erstellen Sie einen Windows-ODBC-Datenquellennamen für die Datenbank, und registrieren Sie die Datenbank beim Konfigurationsmanager, indem Sie auf klicken.
- Erstellen Sie ein Nachrichtengruppenprojekt und die Nachrichtengruppe 'MAPPING3_AUDIT_messages' (stellen Sie dabei sicher, dass die Nachrichtengruppe für Namespaces mit physischem XML-Format aktiviert ist) und eine Nachrichtendefinitionsdatei namens 'AUDIT'.
- Erstellen Sie die Nachricht 'addev1' mit folgender Struktur:
addev1
id (xsd:int) lokales Element
status (xsd:string) lokales Element
name (xsd:string) lokales Element
size (xsd:int) lokales Element
payment (xsd:decimal) lokales Element
- Erstellen Sie ein Nachrichtenflussprojekt namens 'MAPPING3_AUDIT_flows'.
- Erstellen Sie den Nachrichtenfluss 'addev1' mit folgender Zuordnung: MQEmpfangsknoten -> Dateneinfügeknoten -> Datenaktualisierungsknoten -> Datenlöschknoten -> MQSendeknoten.
- Setzen Sie im Dateneinfügeknoten die Eigenschaft 'Datenquelle' auf MAPDB.
- Öffnen Sie die Zuordnung für den Dateneinfügeknoten, wählen Sie 'MAPPING3_AUDIT_messages addev1' als Quelle und 'MAPDB.SCHEMA.CONFIRMATION' als Ziel aus.
- Verbinden Sie die Quelle mit dem Ziel wie folgt:
addev1 MAPDB
id -------------- RESID
- Setzen Sie im Datenaktualisierungsknoten die Eigenschaft 'Datenquelle' auf MAPDB.
- Öffnen Sie die Zuordnung für den Datenaktualisierungsknoten und wählen Sie 'MAPPING3_AUDIT_messages addev1' als Quelle und 'MAPDB.SCHEMA.RESERVATION' als Ziel aus.
- Verbinden Sie die Quelle mit dem Ziel wie folgt:
addev1 MAPDB
id -------------- RESID
name ---------- NAME
size ------------ PARTY
payment ------- PAYMENT
- Wählen Sie im Spreadsheetfenster '$db:update' aus und ändern Sie 'fn:true()' in '$db:update.MAPDB.MQSI.RESERVATION.RESID = $source/addev1/id' und '$source/addev1/status
= 'CONFIRM''.
- Setzen Sie im Datenlöschknoten die Eigenschaft 'Datenquelle' auf MAPDB.
- Öffnen Sie die Zuordnung für den Dateneinfügeknoten, wählen Sie 'MAPPING3_AUDIT_messages addev1' als Quelle und 'MAPDB.SCHEMA.PROVISIONAL' als Ziel aus.
- Wählen Sie im Spreadsheetfenster '$db:delete' aus, und ändern Sie 'fn:false()' in
'$db:delete.MAPDB.MQSI.PROVISIONAL.RESID = $source/addev1/id'.
- Erstellen Sie folgende Instanznachricht mit den entsprechenden RFH2-Headern:
<addev1>
<id>8214</id>
<status>CONFIRM</status>
<name>ARCHIBALD</name>
<size>2</size>
<payment>1038.0</payment>
</addev1>