Message Mapping
# Message Mapping

Message Mapping ist ein Fachbegriff aus der EDV, speziell aus dem Bereich Electronic Data Interchange.

Ein Mapping ist eine Vorschrift für ein EDI-Konvertersystem zur Konvertierung einer Nachricht aus einer Struktur in eine andere.

Abhängig vom verwendeten Konvertersystem kann ein Mapping in unterschiedlicher Form erstellt werden, zum Beispiel in Form einer Tabelle, als Quellcode in einer Programmiersprache, durch grafische Oberfläche (GUI), oder im Falle von XML-Nachrichten als XSLT-Script.

## Beispiel

Als Beispiel dient hier eine Bestellung, die von einem Kunden an einen Lieferanten gesendet wird. Der Kunde arbeitet mit einem SAP R/3-System, somit erzeugt er die Bestellung in der Struktur SAP Intermediate Document (IDoc), der Lieferant erwartet die Bestellung in der Struktur EDIFACT. Ganz konkret betrachten wir ein spezielles Element der Nachricht, nämlich die Bestellnummer des Kunden (fett dargestellt):

    E2EDK01002000000010 EUR 1.00000 0010 EC 3000064288

Diese Information wird durch die Konvertierung nicht inhaltlich verändert, sondern in die Zielstruktur übertragen. Eine mögliche Darstellung in EDIFACT ist:

    RFF+ON:3000064288

Um genau diese Konvertierung herbeizuführen, kann der entsprechende Ausschnitt aus einem Mapping zum Beispiel wie folgt aussehen, formuliert in einer speziellen Programmiersprache:

    copy DC1.K01:BELNR to UNB.UNH.G01.RFF:C506.1154;

BELNR ist dabei die Feldbezeichnung des Feldes im IDOC, in dem die Bestellnummer steht, 1154 ist die Feldbezeichnung im EDIFACT, welches hier die Bestellnummer aufnimmt. Insgesamt stellt der Ausdruck 'DC1.K01:BELNR' die Einbettung des Feldes in die Struktur des IDOC dar: BELNR ist ein Feld im Satz 'K01', welcher wiederum unter dem Satz 'DC1' angeordnet ist. Analog dazu gibt der Ausdruck 'UNB.UNH.G01.RFF:C506.1154' die eindeutige Position und Hierarchie des Elements 1154 in der EDIFACT-Struktur an.

Dieses Mapping wird nach der Fertigstellung in ausführbaren Code umgewandelt und zur Laufzeit vom Konverter ausgeführt.

