Das Beispielprogramm EDIFACT ausführen

In diesem Abschnitt wird erläutert, wie die Testnachrichten durch den Nachrichtenfluss von EDIFACT gesendet werden.

Die Eingabenachrichten

Im Beispielprogramm EDIFACT sind folgende fünf Testnachrichten enthalten.

Bei allen fünf Nachrichten handelt es sich um INVOIC-Nachrichten. Die ersten vier Eingabenachrichten sind gültig. Die fünfte Eingabenachricht ist ungültig, da das BGM-Feld in der Nachricht fehlt.

Das Beispielprogramm ausführen

Zur Ausführung des Beispielprogramms ist eine Nachrichteneinreihung in die Eingabewarteschlangen und ein Nachrichtenabruf aus den Ausgabewarteschlangen erforderlich. Befolgen Sie nachfolgende Anweisungen:

  1. Stellen Sie eine Eingabenachricht in die Warteschlange EDIFACT_TO_XML_IN.
    Wenn Sie eine Nachricht in die Warteschlange EDIFACT_TO_XML_IN stellen, wird die Nachricht vom MQEmpfangsknoten EDIFACT_TO_XML_IN im ersten Nachrichtenfluss (mit dem Namen VALIDATINGEDIFACT2XML.msgflow) syntaktisch analysiert und anhand der Nachrichtengruppe auf Gültigkeit geprüft:
  2. Rufen Sie die umgewandelte Nachricht aus der Warteschlange EDIFACT_TO_XML_OUT ab, und speichern Sie die Nachricht. Bei der Nachricht handelt es sich jetzt um eine Nachricht im XML-Format.
  3. Stellen Sie die gespeicherte Nachricht in die Warteschlange XML_TO_EDIFACT_IN.
    Wenn Sie die Nachricht in die Warteschlange XML_TO_EDIFACT_IN stellen, wird die Nachricht vom MQEmpfangsknoten XML_TO_EDIFACT_IN im zweiten Nachrichtenfluss (mit dem Namen VALIDATINGXML2EDIFACT.msgflow) syntaktisch analysiert und anhand der Nachrichtengruppe auf Gültigkeit überprüft:
  4. Rufen Sie die Nachricht aus der Warteschlange XML_TO_EDIFACT_OUT ab. Bei der Nachricht handelt es sich nun um eine EDIFACT-Nachricht.

Wenn keine Nachricht in der Warteschlange EDIFACT_TO_XML_OUT bzw. XML_TO_EDIFACT_OUT vorhanden ist, lesen Sie den Abschnitt Fehler diagnostizieren. Möglicherweise befindet sich die Nachricht immer noch in der Eingabewarteschlange oder in der Warteschlange EDIFACT_FAIL bzw. in einer der Systemwarteschlangen.

Die Nachricht 'D.96A_INVOIC_missing_BGM.txt'

Wenn Sie die Nachricht 'D.96A_INVOIC_missing_BGM.txt' durch den ersten Nachrichtenfluss senden, schlägt die Gültigkeitsprüfung auf dem MQEmpfangsknoten EDIFACT_TO_XML_IN fehl. Der MQEmpfangsknoten generiert einen Fehler, da das BGM-Feld in der Nachricht fehlt. Der Fehler kann im Anwendungsprotokoll der Windows-Ereignisanzeige aufgerufen werden. Der Fehlertext lautet wie folgt:

Message Validation failure (Gültigkeitsprüfung für Nachricht fehlgeschlagen). An element, that has been deemed complete,
  does not meet the minOccurs constraint (Ein Element,
das für vollständig gehalten wurde, erfüllt die Einschränkung 'minOccurs' nicht). Element, BGM, has 0 instances on the
  logical tree, but has been defined or qualified with a minOccurs constraint
  of 1 within its parent type/element INVOIC of index 1. Adjust the minOccurs
  constraint downwards and redeploy to the broker or increase the instances of
  the element in the message itself (Das Element BGM
hat 0 Instanzen in der logischen Baumstruktur. Es wurde jedoch mit der Einschränkung 'minOccurs'
gleich 1 innerhalb des übergeordneten Typs/Elements INVOIC mit dem Index 1 definiert oder
qualifiziert. Korrigieren Sie die Einschränkung 'minOccurs' nach unten, und führen Sie den Einsatz
für den Broker erneut durch, oder erhöhen Sie die Instanzen des Elements in der Nachricht
selbst). 

Symbol für die Hauptseite   Zurück zum Beginn des Beispielprogramms