sapdev logo background
sapdev logo sapdev logo
Comments

ABAP DATA Statement syntax, information and example SAP source code



Return to Statement index



DATA

Short Reference

ABAP Syntax:

Using Predefined Types

1 DATA { {var[(len)] TYPE abap_type [DECIMALS dec]}
| {var TYPE abap_type [LENGTH len] [DECIMALS dec]} }
[VALUE val|{IS INITIAL}]
[READ-ONLY].

Reference to Existing Types

2 DATA var { {TYPE [LINE OF] type}
| {LIKE [LINE OF] dobj} }
[VALUE val|{IS INITIAL}]
[READ-ONLY].

Reference Variables

3 DATA ref { {TYPE REF TO type}
| {LIKE REF TO dobj} }
[VALUE IS INITIAL]
[READ-ONLY].

Structures

4 DATA BEGIN OF struc [READ-ONLY].
...
DATA comp ...
INCLUDE {TYPE|STRUCTURE} ...
...
DATA END OF struc.

Internal Tables

5 DATA itab { {TYPE tabkind OF [REF TO] type}
| {LIKE tabkind OF dobj} }
[ tabkeys ] [INITIAL SIZE n]
[WITH HEADER LINE]
[VALUE IS INITIAL]
[READ-ONLY].

Ranges Table

6 DATA rtab {TYPE RANGE OF type}|{LIKE RANGE OF dobj}
[INITIAL SIZE n]
[WITH HEADER LINE]
[VALUE IS INITIAL]
[READ-ONLY].

LOB Handle Structures

7 DATA dtype TYPE dbtab [READ-ONLY]
lob_handle_type
FOR lob_handle_columns
[ lob_handle_type
FOR lob_handle_columns
... ].

Static Boxed Component s

8 DATA struc TYPE struc_type BOXED.

What does it do? The statement DATA declares a variable of any data type. The declared data object is visible within the current context as of this position. Within the declaration part of a class or an interface, DATA declares an instance attribute whose validity is bound to an instance of a class.
This statement has various syntax forms, which allow elementary data types, reference types, structured types, and table types to be defined. With the exception of two additions ( VALUE
and READ-ONLY ), these are the same syntax forms as in the statement TYPES . In this way, a new data type can be defined when declaring a data object. The most important difference compared with the statement TYPES is that a data type defined using DATA (and not derived from an existing type) is available only as a property of the declared data object and is not independent. This kind of data type is bound to its data object.
For the definition of a structure struc , any data declarations specified are enclosed in two DATA statements with the additions BEGIN OF and END OF . Here a struc structure is declared that contains the enclosed data objects comp as a
struc-comp component. Structure definitions can be nested.
For the names var , ref , struc , comp ,
itab , and rtab , the naming conventions apply.
Latest notes: The syntax of the DATA statement corresponds to the syntax of the TYPES statement, with the exception of two additions . In this way, a new data type can be defined when declaring a data object. The most important difference compared with the statement TYPES is that a data type defined using DATA (and not derived from an existing type) is available only as a property of the declared data object and is not independent. This kind of data type is bound to its data object.

Data objects that are declared in a program, but cannot be accessed there statically, produce a warning message in the enhanced program check.

An inline declaration of variables can be made using the declaration operator DATA .

The obsolete variant DATA ... COMMON PART
declares interface work areas.
Documentation extract taken from SAP system, � Copyright SAP AG. All rights reserved




CREATE_OBJECT_PARA_TABLES
DATA_BEGIN_OF_OCCURS




comments powered by Disqus