!--a11y-->
Datentyp-Erweiterungen 
SAP-Anwendungen können es Kunden
erlauben, den Quellcode der Anwendung modifikationsfrei zu erweitern damit
kundenspezifische Anforderungen erfüllt werden können, die über die
Standard-Auslieferung hinaus gehen. Die Anwendungen können hierfür
beispielsweise
Business Add-Ins
(BAdIs) verwenden. Darüber hinaus können Kunden für Anwendungen, die
Messages über XI austauschen, Datentyp-Erweiterungen
für Datentypen des Integration Repository definieren. Mit Hilfe dieser
Erweiterungen können die Kunden zusätzliche Daten mit einer Message
übermitteln, auf die sie dann zum Beispiel über BAdIs zugreifen.
Kunden oder Partner müssen Datentyp-Erweiterungen in einer eigenen Software-Komponentenversion und einen eigenen Namensraum anlegen. Diese Software-Komponentenversion muss auf der SAP-Software-Komponentenversion basieren, in der der zu erweiternde Datentyp definiert ist.
Siehe auch:
Zusätzliche
Softwareabhängigkeiten definieren.

Der Integration Builder erkennt Änderungen an bereits importierten Software-Komponentenversionen nicht. Wenn Sie also nachträglich Abhängigkeiten zwischen Software-Komponentenversionen definieren, die bereits importiert wurden, müssen Sie die überliegende Software-Komponentenversion nochmals in den Integration Builder importieren. Bereits angelegte Objekte gehen dabei nicht verloren.
Folgende Erweiterungen des Datentyps sind möglich:
· Sie können Elemente und Strukturen auf obersten Hierarchielevel als Unterelement des Wurzelelements einfügen
· Sie können Attribute für das Wurzelelement oder ihre eingefügten Elemente definieren
· Elemente und Attribute auf dem obersten Hierarchielevel können Sie nur als optionale Felder anlegen, alle anderen mit einer beliebigen Häufigkeit
· Für neu eingefügte Elemente oder Attribute können Sie eigene Facetten in der Spalte Details festlegen. Für Felder von SAP-Datentypen ist dies nicht möglich.
...
1. Legen Sie eine Datentyp-Erweiterung an.
2. Weisen Sie der Datentyp-Erweiterung einen Datentyp aus einer unterliegenden Software-Komponentenversion zu. Solche Datentypen sind im Navigationsbaum im Zweig Basis-Objekte Ihrer Software-Komponentenversion sichtbar.
3. Der Integration Builder belegt das Feld XML-Namensraum automatisch mit dem Namensraum Ihrer Datentyp-Erweiterung. Falls erwünscht, können Sie hier einen anderen XML-Namensraum eintragen. Mit dem XML-Namensraum vermeiden Sie Namenskonflikte zwischen Kundenfeldern und nachträglich von SAP ergänzten Feldern.
4. Erfassen Sie auf der Registerkarte Erweiterungs-Definition die Felder und Attribute, die zusätzlich auf oberster Ebene hinzugefügt werden sollen. Es stehen ihnen die gleichen Funktionen wie beim XSD-Editor zur Verfügung, mit den oben beschriebenen Einschränkungen. Auf der Registerkarte XSD-Definition können Sie sich die Darstellung in XSD anschauen.
Der erweiterte Datentyp wird auf der Registerkarte Erweiterter Datentyp angezeigt.
Um eine Datentyp-Erweiterung zu
verwenden, legen Sie mit der ABAP-Proxy-Generierung
Proxy-Objekte für die Datentyp-Erweiterung im Anwendungssystem an. (Beziehen
Sie sich dabei auf die kundenspezifische Software-Komponentenversion.) Die ABAP-Proxy-Generierung
bildet Datentyp-Erweiterungen auf
APPEND-Strukturen
im ABAP Dictionary ab.

Die ABAP-Proxy-Generierung legt keine generischen BAdIs im Anwendungssystem für den Zugriff auf die APPEND-Strukturen an.
Es gibt kein Erweiterungskonzept in Java. Sie können nichtsdestotrotz Proxies für Message-Interfaces nachgenerieren, die auf Datentyp-Erweiterungen verweisen:
...
1. Gehen Sie im Integration Builder in ihre kundenspezifische Software-Komponentenversion.
2. Wählen Sie unter Basis-Objekte das Message-Interface aus, das auf die Datentyp-Erweiterung verweist. Sie können für dieses Message-Interface wie gewohnt Proxies generieren. Datentyp-Erweiterungen der gleichen und unterliegenden Software-Komponentenversionen werden erkannt.
Die Elemente und Attribute der Erweiterung werden zwar von der Generierung erkannt, aber nicht besonders behandelt. Die generierten Objekte lassen keine Rückschlüsse zu, welche Klassen oder Attribute von der Datentyp-Erweiterung stammen. Es gibt also keine eigenen Java-Objekte für Erweiterungen.

Die Java-Proxy-Generierung kann nur Proxy-Objekte aus Message-Interfaces erzeugen. Gibt es mehrere Datentyp-Erweiterungen zu einem Datentyp, legt die Generierung einfach Proxy-Objekte für alle Datentyp-Erweiterungen an.