!--a11y-->
ABAP-Mappings 
ABAP-Mappings sind Mapping-Programme in
ABAP Objects, die
Kunden mit der ABAP Workbench implementieren können.
Beachten Sie unbedingt die Voraussetzungen in den Abschnitten Einsatzmöglichkeiten und Integration, sowie die Einschränkungen unter Mapping-Entwicklung mit der ABAP Workbench.
Ein ABAP-Mapping besteht aus einer ABAP-Klasse, die das Interface IF_MAPPING im Paket SAI_MAPPING implementiert. Das Interface hat eine Methode EXECUTE mit folgender Signatur:
Importing-Parameter
Parameter |
Bedeutung |
SOURCE |
Quell-XML-Dokument |
PARAM |
Parameter-Objekt für lesenden Zugriff auf Laufzeit-Konstanten (siehe unten). |
TRACE |
Trace-Objekt, mit dem Sie Meldungen in den Mapping-Trace schreiben können (siehe unten). |
Exporting-Parameter
Parameter |
Bedeutung |
RESULT |
Ziel-XML-Dokument |
Ausnahme: CX_MAPPING_FAULT
Anwendungen können innerhalb der Methode EXECUTE selbst entscheiden, auf welche Weise sie das Quell-XML-Dokument einlesen und verändern. Wenn Sie den XSLT-Prozessor des SAP Web AS nutzen wollen, können Sie an Stelle von ABAP-Mappings auch direkt ein Stylesheet mit der ABAP Workbench entwickeln (siehe XSLT-Mappings (ABAP Engine)).
Mit dem Trace-Objekt können Sie Meldungen in den Mapping-Trace schreiben, den Sie sich im Message-Monitoring anschauen können. Bei Verwendung der Methode TRACE geben Sie dazu den Trace-Level und die auszugebende Meldung an:
Trace-Level |
Bedeutung |
0 |
Es wird kein Trace geschrieben |
1 |
Ausgabe von Warnungen |
2 |
Ausgabe von Warnungen und Fehlerinformationen |
3 |
Ausgabe von Warnungen, Fehler- und Debugging-Informationen |
Alternativ können Sie mit den Methoden TRACE1, TRACE2 oder TRACE3 verwenden, um Meldungen für Trace-Level 1, 2 oder 3 in den Trace zu schreiben.

Welche Meldungen im Monitoring erscheinen hängt davon
ab, welcher Trace-Level für eine Pipeline der Integration Engine eingestellt
wurde. Siehe auch:
Konfigurationsdaten
anzeigen/ändern.
Im ABAP-Mapping kann lesend auf Felder des Message-Headers zugegriffen werden. Hierzu wird der EXECUTE-Methode ein Objekt vom Typ IF_MAPPING_PARAM übergeben. Das Interface hat Konstanten für die Namen der verfügbaren Parameter, sowie eine Methode GET, die zum Parameternamen den jeweiligen Wert liefert. Die Konstanten sind die gleichen wie bei Java-Mappings, wobei es die Konstante MAPPING_TRACE nicht für ABAP-Mappings gibt. Das Trace-Objekt wird statt dessen direkt über den Parameter TRACE der Methode IF_MAPPING~EXECUTE übergeben (siehe oben).
Method IF_MAPPING~EXECUTE.
* Get mapping constant SENDER_SERVICE
data:
l_sender_service type string.
l_sender_service =
param->get( IF_MAPPING_PARAM=>SENDER_SERVICE ).
ENDMETHOD.