log_exp - IS BOUND
... ref IS [NOT] BOUND ...
This logical expression checks whether a reference variable contains a valid reference. For
ref, you must specify a data object defined with addition
REF TO or a
functional method, whose return value is typed with
A data reference is valid if it can be dereferenced. An object reference is valid if it points to an object.
When using addition
NOT, the expression is true if the reference variable does not contain a valid reference.
A non-initial reference variable that contains a heap reference is generally always valid (since it keeps an object alive). Only heap references that point to rows from internal tables can become invalid when rows are deleted. A data reference variable that contains a stack reference, on the other hand, can become invalid even if the reference data object is removed from the stack.
The logical expression in the
IF statement is false. The data reference
dref contains a reference to a deleted table row.
itab TYPE TABLE OF ...
FIELD-SYMBOLS <fs> TYPE ANY.
READ TABLE itab REFERENCE INTO dref
IF dref IS BOUND.
ASSIGN dref->* TO <fs>.