Normalisierung im Sender-Adapter
Der SAP Business Connector-Sender-Adapter bietet die Möglichkeit, Daten aus einem externen Message-Protokoll zu extrahieren und damit den Header der XI-Message aufzubauen. Dieser Vorgang wird als Normalisierung oder auch als Partnerumschlüsselung bezeichnet. Der Aufbau des XI-Message-Header hängt vom gewählten Message-Protokoll ab.
Nach erfolgreichem Aufbau des XI-Message-Headers wird eine Sendervereinbarung gesucht, die diesem XI-Header entspricht. Die gefundene Sendervereinbarung verweist auf einen Kommunikationskanal, der weitere Informationen für die Verarbeitung der Message im SAP Business-Connector-Adapter enthält.
Die Felder des XI-Message-Header werden in der Reihenfolge aufgebaut, in der sie in der Tabelle angegeben sind.
Aufbau des XI-Message-Header
Felder |
Aufbau |
Interface |
Es wird der Name des RFC-fähigen Funktionsbausteins verwendet. Das ist der Name des ersten XML-Tags, das nach dem Body-Tag des RFC-XML-Umschlags folgt. Dieses Tag muss im XML-Namensraum urn:sap-com:document:sap:rfc:functions liegen. Da die ABAP-Namensraum-Bezeichner /namensraum/ in XML unzulässig sind, werden sie vom Sender in XML folgendermaßen abgebildet: _-namensraum_- Diese Abbildung wird, wenn vorhanden, wieder rückgängig gemacht. |
Interface-Namensraum |
Es wird der feste Namensraum urn:sap-com:document:sap:rfc:functions verwendet. |
Sender-Service |
Besteht das Feld From im RFC-XML-Umschlag aus sechs Zeichen, werden diese Zeichen als SAP System-ID und Mandant angesehen. Es wird ein partnerloser Service gesucht, der als adapterspezifische Identifikatoren diese System-ID und den Mandant enthält, siehe unter: Service dort unter Adapterspezifische Identifikatoren. Der gefundene partnerlose Service wird als Sender-Service verwendet. Hat das Feld eine andere Länge als sechs Zeichen oder war die Suche nach dem Service erfolglos, wird der Inhalt des Feldes From aus dem RFC-XML-Umschlag selbst als Sender-Service verwendet. |
Sender-Partner |
Dieses Feld bleibt leer. |
Empfänger-Service |
Dieses Feld bleibt leer. |
Empfänger-Partner |
Dieses Feld bleibt leer. |
Der Sender-Adapter bildet den XI-Message Header anhand folgender Regeln ab.
Zur Erklärung werden folgende Begriffe verwendet:
· Bei den unten angegebenen Variablen handelt es sich um Felder des IDoc-Kontrollsatzes, siehe auch: Felder des IDoc-Kontrollsatzes
· Das Zeichen + wird zum Verknüpfen von zwei Textelementen zu einem verwendet
· Die Verwendung von “Beispiel“ beschreibt das feststehende Textelement Beispiel ohne “
Aufbau des XI-Message-Header
Felder |
Aufbau |
Interface |
MESTYP + “.” + IDOCTYP Wenn das Feld CMITYP vorhanden ist, wird noch Folgendes an den Interfacenamen angehängt: “.“ + CMITYP |
Interface-Namensraum |
Hier wird der feste Namensraum urn:sap-com:document:sap:idoc:messages verwendet. |
Sender-Service |
Hat das Feld SNDPOR den Inhalt “SAP” gefolgt von einer dreistelligen System-ID, dann wird versucht, einen partnerlosen Service zu finden, der als adapterspezifische Identifikatoren diese SAP-System-ID und den Wert des Feldes MANDT enthält. Siehe unter: Service, dort unter Adapterspezifische Identifikatoren, IDoc-Adapter und RFC-Adapter Beginnt der Inhalt des Feldes SNDPOR nicht mit “SAP“, wird versucht einen partnerlosen Service zu finden, der als adapterspezifische Identifikatoren (IDoc-Adapter) den Inhalt des Feldes SNDPOR hat. Der gefundene partnerlose Service wird als Sender-Service verwendet. |
Sender-Partner |
Enthält das Feld SNDPRT LS, handelt es sich bei dem Service um ein logisches System und der Sender-Partner bleibt leer. Handelt es sich um kein logisches System, wird ein Partner mit Hilfe der alternativen Identifikatoren (beim Partner) ermittelt. Als Identifikatoren werden hierbei verwendet: · Agentur entspricht gefundenem Sender-Service · Schema entspricht “ALE#“ + SNDPRT. Wenn das Feld SNDPFC gefüllt ist, wird noch folgendes angehängt: “#“ + SNDPFC · Name entspricht SNDPRN Mit diesen Werten wird über alle Partner gesucht. Der gefundene Partner wird als Sender-Partner verwendet. |
Empfänger-Service |
Dieses Feld bleibt immer leer. |
Empfänger-Partner |
Enthält das Feld RCVPRT LS, handelt es sich bei dem Service um ein logisches System und der Empfänger-Partner bleibt leer. Handelt es sich um kein logisches System, wird versucht einen Partner anhand der alternativen Identifikatoren (beim Partner) zu ermitteln. Als Identifikatoren werden hierbei verwendet: · Agentur entspricht gefundenem Sender-Service · Schema entspricht “ALE#“ + RCVPRT. Wenn das Feld RCVPFC gefüllt ist, wird noch Folgendes angehängt: “#“ + RCVPFC · Name entspricht RCVPRN Der gefundene Partner wird als Empfänger-Partner verwendet. |

Der Empfänger-Adapter wertet den Header der XI-Message nicht für die Partnerumschlüsselung aus. Die XI-Message-Payload wird direkt an den empfangenden SAP Business Connector geschickt. Die Message muss also schon das korrekte IDoc-XML-Dokument inklusive IDoc-Kontrollsatz enthalten.