- 9. Februar 2017

How-to: SAP IDoc per HTTP empfangen

Nicht nur das Senden eines IDoc, sondern auch das Empfangen ist per http möglich. Beide Richtungen der Datenübermittlung sind unabhängig voneinander konfigurierbar.

Um das Empfangen von IDocs per http möglich zu machen ist es erforderlich den entsprechenden Dienst zu aktivieren. Was genau zu tun ist, wird im Folgenden beschrieben.

Wir sind Ihr Dienstleister für die Entwicklung, die Ihr SAP noch besser macht.
Schon in der Ideenphase unterstützen wir Sie bei der Definition der Anforderungen. Die Konzeption und Umsetzung erfolgt durch unsere SAP Experten.

Sie erhalten die Komplettlösung – Ihr Projekt machen wir zu unserem Projekt. Mit professionellem Projektmanagement sicheren wir den Projekterfolg.

Gerne spreche ich mit Ihnen über Ihre Ausgangslage und zeige Lösungsmöglichkeiten auf. Auf Wunsch unterbreite ich Ihnen im Anschluss ein unverbindliches Angebot.

Kontaktieren Sie mich: Telefon 0211.9462 8572-16 oder per E-Mail biermann@erlebe-software.de
Ingo Biermann, Fachbereichsleiter

Schritt 1: Service aktivieren

Im ersten Schritt wird der Service „idoc_xml“ aktiviert. Dazu wird die Transaktion SICF (Pflege der Services) aufgerufen und nach dem Hierarchie-Typ „SERVICE“ gefiltert.

Pflege der Services - Einstiegsbildschirm

Pflege der Services – Einstiegsbildschirm

Im darauffolgenden Fenster kann nach dem Servicenamen „idoc_xml“ gefiltert und der Service per Rechtsklick „Service aktivieren“ aktiviert werden. Der Service befindet sich in dem Pfad default_host\sap\bc\.

Pflege der Services - Aktivierung idoc_xml

Pflege der Services – Aktivierung idoc_xml

Hinweis

In der Partnervereinbarung muss der entsprechende Eingangsparameter für den Dokumenttyp gesetzt sein. Dies ist in der Transaktion WE20 für den beteiligten Partner möglich.

Testen der Übermittlung des IDoc

Zum Testen kann die App „Postman“ aus dem Chrome Web Store verwendet werden. Mit Hilfe dieser App kann ein http Request an das SAP-System gesendet werden und der erfolgreiche Eingang überprüft werden. In Postman wird die Request URL in folgender Form eingeben:

http://[System-Adresse]:[Port]/sap/bc/idoc._xml?sap-client=[clientnr]

Falls erforderlich können im Reiter „Autorisierung“ Zugangsdaten gepflegt werden. Im Reiter „Body“ wird das IDoc als XML eingefügt. Über die Schaltfläche „Send“ wird die Anfrage an das SAP-System gesendet.

Postman Konfiguration

Postman Konfiguration

In Postman wird bei erfolgreicher Übermittlung der Status „200 OK“ angezeigt. Dies bedeutet, dass das IDoc erfolgreich an das SAP-System übermittelt wurde.

Ergebnis - Postman

Ergebnis – Postman

Im SAP-System kann das Ergebnis in der Transaktion WE02 angezeigt werden. Dort befindet sich nun ein eingegangenes IDoc. Dieses IDoc findet man unter dem entsprechenden Dokumententyp. Dort erhält man über den Status Informationen über den Verarbeitungsstand innerhalb von SAP.

Ergebnis - SAP-System (IDoc-Liste)

Ergebnis – SAP-System

Spezialfall: Statusänderung

Ein Spezialfall eines eingehenden IDoc ist eines vom Typ STATUS. Dieser Typ wird dazu verwendet, den Status eines bestehenden IDoc zu verändern. So kann zum Beispiel ein System welches ein IDoc empfangen hat, eine Rückmeldung über den Verarbeitungsstand geben. Damit das SAP-System ein solches IDoc verarbeiten kann, muss die entsprechende Partnervereinbarung angepasst werden. In der Partnervereinbarung muss in den Eingangsparametern der Nachrichtentyp STATUS hinzugefügt werden. SAP liefert den entsprechenden Vorgangscode „STA1“ direkt mit. Ein Beispiel für ein Statusupdate im XML-Format könnte wie folgt aussehen:

XML Statusupdate

XML Statusupdate

Die entscheidenden Elemente sind dabei diejenigen, die das Statusupdate enthalten. Im Element <E1Stats> werden alle Informationen gesammelt. Dazu gehören die Nummer des zu ändernden IDoc (<DOCNUM>), Datum und Zeit der Änderung (<LOGDAT>, <LOGTIM>) sowie der Status den das IDoc bekommen soll (<STATUS>). Durch die Angabe des Vorgangscodes im Eingangsparameter wird die Statusänderung automatisch verarbeitet. Im Beispiel wird der Status auf 12 gesetzt:

Erfolgreiche Statusänderung

Erfolgreiche Statusänderung

Auf diese Art und Weise können SAP-Systeme und auch nicht-SAP-Systeme eine Rückmeldung zu einem IDoc geben.


SHARE



Schreiben Sie einen Kommentar

Bitte füllen Sie alle mit * gekennzeichneten Felder aus. Ihre E-Mail Adresse wird nicht veröffentlicht.