Ansicht
Dokumentation

ABENCONSTRUCTOR_EXPRESSION_REF - CONSTRUCTOR EXPRESSION REF

ABENCONSTRUCTOR_EXPRESSION_REF - CONSTRUCTOR EXPRESSION REF

CL_GUI_FRONTEND_SERVICES - Frontend Services   CL_GUI_FRONTEND_SERVICES - Frontend Services  
Diese Dokumentation steht unter dem Copyright der SAP AG.
SAP E-Book

REF, Referenzierungsoperator

... REF type( dobj $| table_exp ) ...

Alternativen:

1. ... REF type( dobj )

2. ... REF type( table_exp )

Wirkung

Ein Konstruktorausdruck mit dem Referenzierungsoperator REF erzeugt entweder eine Datenreferenzvariable, die auf das Argument dobj zeigt, oder steuert einen Tabellenausdruck table_exp.

Als Argument können vorhandene Datenobjekte und Tabellenausdrücke aber keine anderen Ausdrücke oder Funktionsaufrufe angegeben werden.

Alternative 1

... REF type( dobj )


Wirkung

Wenn als Argument ein Datenobjekt dobj angegeben ist, wirkt der Operator REF wie die Anweisung GET REFERENCE und erzeugt als Resultat eine Datenreferenzvariable, die auf das angegebene Datenobjekt dobj zeigt. type bestimmt den statischen Typ des Resultats. Für type kann angegeben werden:

  • Der generische Datentyp data.
  • Das Zeichen # als Symbol für einen Datentyp, der nach folgender Hierarchie bestimmt wird:
  • Wenn der an einer Operandenposition benötigte Datentyp eindeutig und vollständig erkennbar ist, wird der Operandentyp verwendet.

  • Wenn der Operandentyp nicht aus dem Kontext abgeleitet werden kann, wird der Datentyp von dobj verwendet

  • Wenn der Datentyp von dobj nicht statisch erkennbar ist, wird der generische Typ data verwendet.

In den Klammern muss genau ein unbenanntes Argument dobj angegeben werden. Bei einer Offset-/Längenangabe +off(len) darf der Datentyp von dobj aber weder string noch xstring sein.

Hinweise

  • Der Konvertierungsoperator REF ist geeignet, um die Deklaration von Hilfsvariablen zu vermeiden, die nur notwendig sind, um beispielsweise Datenreferenzvariablen als Aktualparameter anzugeben.
  • Hinter REF können keine leeren Klammern angegeben werden.

Beispiel

Füllen einer internen Tabelle mit dem Wertoperator VALUE, wobei die Komponente dref über REFmit einem Wert versorgt wird. Es handelt sich um einen Ausschnitt aus dem ausführbaren Beispiel zur Klasse CL_ABAP_BROWSER. Ähnliche Verwendungen finden sich in den ausführbaren Beispielen zu ADBC, die eine Parameterbindung verwenden.

Alternative 2

... REF type( tab_exp )


Wirkung

Wenn als Argument ein Tabellenausdruck table_exp angegeben ist, steuert der Operator REF die Art dessen Resultats und ermöglicht dabei die Angabe eines Standardwerts für nicht gefundene Zeilen, wie es im zugehörigen Abschnitt beschrieben ist.

Beispiel

Das Ergebnis des Operators REF ist eine Datenreferenzvariable, die auf die fünfte Zeile der internen Tabelle itab zeigt.






ABAP Short Reference   CL_GUI_FRONTEND_SERVICES - Frontend Services  
Diese Dokumentation steht unter dem Copyright der SAP AG.

Length: 5433 Date: 20240523 Time: 153924     sap01-206 ( 56 ms )