Show TOC Anfang des Inhaltsbereichs

Referenzvariable  Dokument im Navigationsbaum lokalisieren

Referenzvariablen enthalten Referenzen. Der eigentliche Inhalt einer Referenzvariable, also der Wert einer Referenz, ist in einem ABAP-Programm nicht sichtbar. In ABAP treten Referenzen entweder als Datenreferenzen oder als Objektreferenzen auf. Entsprechend unterscheiden wir zwischen Datenreferenzvariablen und Objektreferenzvariablen.

Der Datentyp einer Datenreferenzvariablen wird angelegt mit:

TYPES t_dref TYPE REF TO DATA.

Eine Datenreferenzvariable wird angelegt entweder mit Bezug auf obigen Datentyp oder mit:

DATA dref TYPE REF TO DATA.

Referenzvariable werden in ABAP wie andere Datenobjekte mit elementarem Datentyp behandelt. Das bedeutet, dass eine Referenzvariable nicht nur als Einzelfeld, sondern auch als kleinste unteilbare Einheit komplexer Datenobjekte wie Strukturen oder interne Tabellen definiert werden kann.

Nach ihrer Deklaration ist eine Referenzvariable initial, d.h. sie enthält einen leeren Zeiger, bzw. zeigt auf kein Objekt. Eine Dereferenzierung einer initialen  Referenzvariablen ist nicht möglich. Damit eine Datenreferenzvariable eine Referenz enthält, die auf ein Datenobjekt zeigt, muss

·        mit ihr ein Datenobjekt dynamisch erzeugt werden.

·        mit ihr eine Referenz auf ein Datenobjekt beschafft werden.

·        ihr eine bestehende Datenreferenz aus einer anderen Datenreferenzvariable zugewiesen werden.

Die Zuweisung von Referenzen zwischen Datenreferenzvariablen erfolgt mit der MOVE-Anweisung bzw. dem Zuweisungsoperator (=) aber auch beim Füllen interner Tabellen oder bei der Übergabe an Schnittstellenparameter von Prozeduren. Bei einer solchen Zuweisung müssen die beteiligten Operanden als Datenreferenzvariable typisiert sein. Zuweisungen an Objektreferenzvariable oder andere Variable sind nicht möglich. Nach der Zuweisung zeigt die Referenz in der Zielvariable auf das gleiche Datenobjekt wie die Referenz in der Quellvariable.

 

 

Ende des Inhaltsbereichs