Privater Initiator-Prozess
Microsoft BizTalk Accelerator for RosettaNet (BTARN) verwendet den privaten Initiatorprozess (PrivateInitiator.odx), um Dienstinhalte auf einem Initiatorcomputer zu verarbeiten. Hierzu gehören folgende Elemente:
Erstellen des Dienstinhalts einer ursprünglichen Nachricht und Weiterleiten der Nachricht an den öffentlichen Prozess auf dem Weg an den Handelspartner
Verarbeiten einer Rückgabesignalmeldung und Weiterleiten an die Branchenanwendung
Im Fall eines PIP mit doppelter Aktion verarbeiten Sie eine Antwortrückmeldung und weiterleiten sie an die LOB-Anwendung.
Der private Prozess legt auch Metadaten fest und fügt alle Anlagen hinzu. Der private Prozess leitet ausgehende Nachrichten an den öffentlichen Prozess weiter, wodurch RNIF-Header (RosettaNet Implementation Framework) hinzugefügt und die Nachricht für die Übertragung vorbereitet wird. Der private Prozess leitet eingehende Nachrichten an die Tabelle MessagesToLOB in der Datenbank BTARNDATA SQL Server weiter, die an die BRANCHENanwendung weitergeleitet wird.
Dieser private Prozess automatisiert die Kaufabfrage-/Bestellprozesse, die 3A2- und 3A4-Partnerschnittstellenprozesse (Partner Interface Processes, PIPs) verwenden. Außerdem werden alle anderen PIP-Nachrichten verarbeitet. Sie können den privaten Prozess für Ihre spezifischen Geschäftsprozesse anpassen.
Nachrichtenfluss
Der Nachrichtenfluss durch den privaten Initiatorprozess lautet wie folgt:
Der private Initiatorprozess empfängt die ursprüngliche Nachricht aus der Tabelle MessagesFromLOB in der Datenbank BTARNDATA SQL Server. Die Back-End-LOB-Anwendung leitet die Nachricht an diese Tabelle weiter.
Der private Prozess bereitet den Dienstinhalt einer initiierten Nachricht vor und sendet ihn an den öffentlichen Prozess.
Der private Initiatorprozess wechselt dann in einen Wartezustand und lauscht auf ein Rückgabesignal.
Beim Empfangen eines Rückgabesignals vom öffentlichen Prozess erstellt der private Prozess eine Signalnachricht und sendet das Signal an die Tabelle MessagesToLOB in der BTARNDATA-SQL Server-Datenbank auf der Route an die LOB-Anwendung.
Der private Prozess sendet eine Benachrichtigung an die LOB-Anwendung, dass die Signalnachricht in die Tabelle MessagesToLOB eingefügt wird.
Wenn die RNIF-Version 1.1 lautet, wartet der private Prozess auf eine Bestätigungsmeldung. Wenn das Signal empfangen wird, erstellt es die Signalnachricht und sendet das Signal an die Tabelle MessagesToLOB in der Route an die LOB-Anwendung.
Wenn die ursprünglichen Nachrichten eine Einzelaktionsnachricht waren, ist der private Prozess abgeschlossen, nachdem die Signalnachricht an die LOB-Anwendung zurückgegeben wurde. Wenn die ursprüngliche Nachricht eine Doppelaktionsnachricht war, lauscht der private Prozess auf eine Antwortnachricht.
Wenn der private Prozess eine Antwortnachricht vom öffentlichen Prozess empfängt, erstellt er eine Antwortnachricht im Format der LOB-Anwendung. Dazu gehört das Abrufen der LOB-Nachrichtenvorlage, das Serialisieren des XML-Dienstinhalts und das Laden der XML-Nachrichtenteile in die LOB-Nachricht.
Der private Prozess leitet die Nachricht an die Tabelle MessagesToLOB in der Datenbank BTARNDATA SQL Server weiter.
Wenn die Antwortnachricht eine Anlage enthält, ruft der private Prozess das AttachmentHelper-Tool auf, um die Anlage zu verarbeiten.
Der private Prozess sendet eine Benachrichtigung an die LOB-Anwendung, dass er die Antwortnachricht in die Tabelle MessagesToLOB eingefügt hat, und ist dann abgeschlossen.
Behandlung falscher Nachrichten
Wenn der private Initiatorprozess eine falsche Nachricht von der LOB-Anwendung empfängt, sendet der private Prozess eine Ausnahmemeldung zurück an den LOB. Der private Prozess postt jedoch keine falsche Nachricht in der BizTalk Server BizTalk-Verwaltungskonsole. Daher können Sie die falsche Nachricht nicht in der BizTalk-Verwaltungskonsole anzeigen. Sie können die Ausnahmemeldung verwenden, um auf die falsche Nachricht zuzugreifen, um zu bestimmen, welche Nachricht falsch war, und dann auf die falsche Nachricht in der Tabelle MessagesFromLOB der BTARNDATA-Datenbank zugreifen. Diese Nachricht ist jedoch möglicherweise nicht mit der Nachricht identisch, die der private Prozess verarbeitet hat, da der gespeicherte Prozess und adapter, der zum Verarbeiten der Nachricht verwendet wurde, sie bearbeiten. Sie fügen der Nachricht ein Stammelement und einen Namespace hinzu. Der gespeicherte Prozess und adapter geben möglicherweise mehrere Datensätze zurück.
Weitere Informationen
Private Prozesse
Privater Antwortprozess
Orchestrierungsbeispiele
Beispiel „PrivateInitiator“