In ABAP Objects, the following statements cause an error message:
Operations for all table
types
INSERT TABLE itab.
COLLECT
itab.
READ TABLE itab ...
MODIFY
TABLE itab ...
MODIFY itab ... WHERE ...
DELETE TABLE itab.
LOOP AT itab ...
Operationen for index tables
APPEND itab.
INSERT itab ...
MODIFY itab ...
Correct syntax:
Operations for all table types
INSERT
wa INTO TABLE itab.
COLLECT wa INTO itab.
READ TABLE itab ... INTO wa | ASSIGNING <fs>.
MODIFY
TABLE itab FROM wa ...
MODIFY itab FROM wa ... WHERE
...
DELETE TABLE itab FROM wa.
LOOP AT itab INTO wa ... | ASSIGNING <fs> ...
Operations for index tables
APPEND wa TO itab.
INSERT wa INTO itab ...
MODIFY itab FROM wa ...
Cause:
The reasons for this lie in the unambiguous separation of tables from work areas. This
programs easier to read. Since you can from now on declare only tables without a header in classes, this is only a constraint in local classes when accessing global tables in the main program.
Overview:
Replacement for Obsolete Statements ABAP Objects