SAP NEWS-757-ITAB



Get Example source ABAP code based on a different SAP table
  



Internal Tables in ABAP Release 7.57
ITOC

ABAP_MODIFICATION_NN New Addition STEP for Defining Step Size and Processing Order

The new addition STEP defines the step size and the order for processing an internal table. For the statements ABAP Addition FOR, STEP can be used to control the step size and the processing order. For the statements ABAP Alternative 3@3@> ABAP Addition ABAP Alternative 3@3@> INSERT ABAP Alternative 2@2@> VALUE, and ABAP Alternative 2@2@>NEW , STEP can only be used to define the step size. It is not possible to change the processing order with STEP for these statements.

ABAP_MODIFICATION_NN Exception when Mixing Index Access with Hash Key Access

Access to a table index when accessing an internal table using a hash key (accessing a hashed table using its primary key or accessing any internal table using a hashed secondary key) is not allowed. When a hashed key is specified dynamically behind USING KEY in statement LOOP AT or expression FOR ... IN, usage of FROM and TO must result in an exception. This was not the case before release 7.57.
From release 7.57 on, the runtime error ITAB_ILLEGAL_ •_OP occurs in such a situation. Before release 7.57, the behavior was undefined.
This change is slightly incompatible.
BEGIN_SECTION SAP_INTERNAL_HINT
Before release 7.57, FROM n: LOOP over table not changed by DELETE or SORT starts with n + 1, LOOP over table changed by DELETE or SORT starts indeterministic. TO: Addition is ignored in a non-debug kernel or leads to runtime error ABAP_ASSERT in a debug kernel.
END_SECTION SAP_INTERNAL_HINT

ABAP_MODIFICATION_NN Correction for FROM Addition

When a negative value is specified for FROM in statement LOOP AT or expression FOR ... IN, it is set to 1 implicitly. Before release 7.57, this was not the case in the following situation:
The internal table is accessed using a sorted key.
The internal table contains more than 10 table lines.
A WHERE condition is specified that can be optimized.
The loop was not processed at all. From release 7.57 on, the loop is processed as documented.
This change is slightly incompatible.