Vernetzung ist nicht nur Teil von Industrie 4.0 sondern auch das Rezept für performante und leistungsfähige Prozessabläufe. In vielen Fällen müssen oftmals komplexe Dokumente auch über die Grenzen des eigenen SAP-Systems hinweg übermittelt werden. Um also eine Kommunikation und damit auch eine Vernetzung unterschiedlicher Systeme zu gewährleisten gibt es verschiedenste Möglichkeiten. Eine davon ist das sogenannte „IDoc“.
Was ist „IDoc“?
Im Grunde ist IDoc das Dateiformat, das von SAP-Systemen ausgegeben wird bzw. eingelesen werden kann. SAP bietet zur Kommunikation bzw. für den Austausch von Dokumenten zwischen den Systemen eine sogenannte ALE-Schnittstelle an. Primär war diese Schnittstelle dazu gedacht Dokumente im FixRecord-Format zwischen zwei SAP-Systemen zu bewegen.
Dies wurde allerdings angepasst und somit die Möglichkeit geschaffen, mit Hilfe der ALE-Schnittstelle auch zwischen SAP- und nicht-SAP-Systemen Dokumente auszutauschen. Dies geschieht mit Unterstützung des SAP-Moduls „PI“. Dieses Modul verwendet allerdings kein FixRecord-Format sondern ein XML-Format. Dadurch ergeben sich zwei unterschiedliche Arten von IDocs: FixRecord-IDoc und XML-IDoc.
Aufbau von IDocs
Grundsätzlich beginnen IDocs mit der Satzart „EDIDC00000000001“. Diese Bezeichnung weist darauf hin, dass ein IDoc ausschließlich für einen elektronischen Datenaustausch gedacht ist. Diese Information erhält man durch die Bezeichnung „EDI“ oder auch „Electronic Data Interchange“. Aufgabe von EDI ist zum einen Papier-Dokumente durch elektronische Dokumente zu ersetzen und zum anderen die Daten in eben diesen Dokumenten in einem Standardformat an z. B. andere Systeme zu übertragen. Somit können sowohl Sender als auch Empfänger das Dokument ohne manuelle Zwischenschritte aufrufen und auslesen.
Dieser Aufbau ist bei allen IDocs gleich, egal welche Art von IDoc verwendet wird. Folgende Informationen sind beinhaltet:
- Typ und Version des IDocs (z. B. INVOIC02)
- Mandant des SAP-Systems
- Dokumentennummer
- Message-Typ
- Sender und Empfänger-Informationen
- Datum/Zeitstempel
- usw.
Ein IDoc-Typ kann mehrere Message-Typen beinhalten. Zum Beispiel kann nicht nur eine Rechnung, sondern auch eine Lieferbestätigung in einem IDoc der Art INVOIC enthalten sein. Auch das versteht man unter der Bezeichnung „Message-Type“.
Die oben erwähnten Informationen für die technische Verarbeitung sowie die eigentlichen Daten der Anwendung werden bei IDocs in sogenannten Segmenten hinterlegt. Diese bestehen aus einzelnen Segmentfeldern, die die kleinste Sinneinheit eines IDocs darstellen.
Zusätzlich dazu wird in sogenannten Statusinformationen hinterlegt, was im Laufe des Prozesses mit diesem IDoc bereits passiert ist. So sind eventuelle Fehler oder falsche Abläufe in jedem Fall nachvollziehbar. Allerdings wird diese Information nicht als Bestandteil des eigentlichen IDocs weitergeleitet, sondern als separate Meldung in der Statusverarbeitung.
Segmente
Ein IDoc-Typ definiert sich durch die Segmente, die als „erlaubt“ eingestellt werden. Dabei ist eine gewisse Abhängigkeit zwischen den Segmenten möglich. Diese „Eltern – Kindsegment-Beziehungen“ stellen sich nach einem bestimmten Muster dar. Zum Beispiel ist das Segment E1EDPT1 ein Kindsegment von Segment E1EDP01 im IDoc-Typ EXPINV01 (Export Faktura) und Kindsegment von E1EDP07 im IDoc-Typ DESADV01 (Bestelldaten Lieferavis). Somit ist zu erkennen, dass ein einzelnes Segment also in verschiedenen Kontexten und damit auch für verschiedene Funktionen verwendet werden kann.
In der folgenden Infografik wird die Grundstruktur eines IDocs dargestellt und aufgezeigt, welche Teile davon tatsächlich zur Kommunikation mit einem anderen System verwendet werden:
Fazit
IDocs finden in vielen Prozessen eines Unternehmens Anwendung. Die Grundfunktion eines IDocs ist die Datenübermittlung zwischen Systemen. Allerdings gibt es vielerlei weitere Funktionen, die mit Hilfe eines IDocs gewährleistet werden können. Um also zurück auf den Ausgangspunkt, Industrie 4.0, zu kommen: Man kann durch die Verwendung eines IDocs z. B. ein System anweisen, automatisch eine Bestellung oder Lieferung auf dem System zu erzeugen. Dazu muss natürlich das Zielsystem für solche Funktionen freigegeben sein.
Sollten Sie Unterstützung bei der Definition von IDocs benötigen, oder weitere Fragen zu diesem Thema haben, können Sie sich gerne mit uns in Verbindung setzen. Wir helfen gerne.