SAP LOOP - Guide



Get Example source ABAP code based on a different SAP table
  



Loop Processing

ABAP_BACKGROUND
Alongside the statements for processing individual lines in internal tables, other statements can be used to address and modify the entire body of the table. Examples:
All categories of assignments applying to whole internal tables
Deleting the whole of an internal table using CLEAR or FREE
Operations in target ranges such as SELECT INTO TABLE
These types of accesses to the table body cause problems by producing a loop across the internal table

ABAP_RULE
Do not modify the entire table body in a loop
You cannot use a loop across an internal table to perform accesses to the table that modify the entire table body at once.

ABAP_DETAILS
A modifying access to the entire table body usually produces a runtime error and at the very least unpredictable program behavior. If this is known statically, a syntax error occurs within classes. This error also occurs in LOOP statements with a secondary key known statically when the table operations in question are used. Otherwise, the syntax check simply returns a warning for compatibility reasons.



Latest notes:

This rule is mainly intended to make you more aware of the problem. If you only work with ABAP Objects or if no syntax check warnings are ignored, the rule above should be met automatically.
For more information, see Changing Internal Tables in a Loop.
ABAP_HINT_END