Ansicht
Dokumentation

ABENLOGEXP_BOUND - LOGEXP BOUND

ABENLOGEXP_BOUND - LOGEXP BOUND

CL_GUI_FRONTEND_SERVICES - Frontend Services   SUBST_MERGE_LIST - merge external lists to one complete list with #if... logic for R3up  
Diese Dokumentation steht unter dem Copyright der SAP AG.
SAP E-Book

- IS BOUND

... ref IS $[NOT$] BOUND ...

Wirkung

Der Prädikatausdruck überprüft, ob eine Referenzvariable eine gültige Referenz enthält. Für ref muss eine Referenzvariable angegeben werden, wobei es sich um eine funktionale Operandenposition handelt.

  • Eine Datenreferenz ist gültig, wenn sie dereferenziert werden kann.
  • Eine Objektreferenz ist gültig, wenn sie auf ein Objekt zeigt.

Mit dem Zusatz NOT ist der Ausdruck wahr, wenn die Referenzvariable keine gültige Referenz enthält. In diesem Fall ist die Referenzvariable entweder initial und enthält die Null-Referenz oder sie ist nicht initial und enthält eine ungültige Referenz, die auf kein Objekt zeigt.

Hinweis

Eine nicht-initiale Referenzvariable, die eine Heap-Referenz enthält ist in der Regel immer gültig, da sie das Objekt am Leben erhält. Nur Heap-Referenzen, die auf Zeilen interner Tabellen zeigen, können ungültig werden, wenn die Zeilen gelöscht werden. Eine Datenreferenzvariable, die eine Stack-Referenz enthält, kann dagegen auch ungültig werden, wenn das referenzierte Datenobjekt vom Stapel entfernt wird.

Beispiel

Der logische Ausdruck in der IF-Anweisung ist falsch. Die Datenreferenz dref enthält eine Referenz auf eine bereits gelöschte Tabellenzeile.

DATA: dref TYPE REF TO data,
      itab TYPE TABLE OF ...

FIELD-SYMBOLS <fs> TYPE ANY.

dref = REF #( itab[ ... ] ).

...

CLEAR itab.

...

IF dref IS BOUND.
  ASSIGN dref->* TO <fs>.
ENDIF.

Prädikatausdruck IS NOT BOUND






RFUMSV00 - Advance Return for Tax on Sales/Purchases   General Data in Customer Master  
Diese Dokumentation steht unter dem Copyright der SAP AG.

Length: 2778 Date: 20240523 Time: 085912     sap01-206 ( 43 ms )