Anfang des Inhaltsbereichs

Kompatibilität Dokument im Navigationsbaum lokalisieren

Wir bezeichnen Datentypen bzw. Datenobjekte als kompatibel, wenn sie in allen technischen Eigenschaften, also Feldlänge, Anzahl der Dezimalstellen und Typ, vollständig übereinstimmen.

Der Begriff kompatibel darf nicht mit dem Begriff konvertibel verwechselt werden. Beim Arbeiten mit Datenobjekten werden häufig Zuweisungen zwischen Datenobjekten verschiedener technischer Eigenschaften vorgenommen. Dabei müssen die Datentypen ineinander konvertiert werden. Die Voraussetzung für die Konvertierung nichtkompatibler Datentypen ist die Existenz entsprechender Konvertierungsregeln. Nur Zuweisungen zwischen kompatiblen Datenobjekten sind ohne Konvertierung möglich.

Der hier definierte Begriff der Kompatibilität zwischen Datentypen bezieht sich immer auf vollständig spezifizierte Datentypen, denn jedes Datenobjekt ist zur Laufzeit vollständig spezifiziert. Diese Kompatibilität ist symmetrisch. Im Zusammenhang mit der Typisierung von Schnittstellenparametern bei Prozeduren und von Feldsymbolen wird ein etwas anderer, unsymmetrischer, Kompatibilitätsbegriff verwendet, da hier generische Typen mit vollspezifizierten Datentypen verglichen werden.

Konsequenzen der Definition für Kompatibilität für die einzelnen Datentypen:

Elementare Datentypen

Elementare Datentypen sind kompatibel mit anderen elementaren Datentypen, wenn sie in bezug auf elementaren ABAP-Typ, Feldlänge und Anzahl der Dezimalstellen identisch sind.

Elementare Datentypen sind nicht kompatibel zu Referenzen oder zu aggregierten Typen.

Referenzen

Referenzen sind kompatibel zu anderen Referenzen, wenn ihre Konstruktionsvorschriften (der Typkonstruktor REF TO <class>|<interface>) übereinstimmt.

Referenzen sind nicht kompatibel zu elementaren Datentypen oder zu aggregierten Typen.

Aggregierte Datentypen

Aggregierte Datentypen sind kompatibel zu anderen aggregierten Datentypen, wenn ihre Konstruktionsvorschriften übereinstimmen.

Aggregierte Datentypen sind nicht kompatibel zu elementaren Datentypen oder zu Referenzen.

Strukturen

Strukturen sind kompatibel zu anderen Strukturen, wenn ihre Konstruktion identisch und ihre Komponenten kompatibel sind. Die Vorschrift, wie kompatible Strukturen aus elementaren Feldern aufgebaut sind, um aus Unterstrukturen die Gesamtstruktur zu bilden, muß identisch und die elementaren Komponenten müssen paarweise kompatibel sein. Wenn sich zwei Strukturen aus der gleichen Folge von elementaren Feldern zusammensetzen, diese Felder jedoch unterschiedlich zu Unterstrukturen kombiniert sind, dann sind die Strukturen nicht kompatibel.

Strukturen sind nicht kompatibel zu internen Tabellen.

Interne Tabellen

Interne Tabellen sind kompatibel zu anderen internen Tabellen, wenn ihre Zeilentypen kompatibel sind und sie in allen übrigen Attributen übereinstimmen. Die Kompatibilität von internen Tabellen hängt nicht von der Anzahl der Zeilen ab.

Interne Tabellen sind nicht kompatibel zu Strukturen.

Ende des Inhaltsbereichs