Ansicht
Dokumentation

ABENLOOP_GROUP_BY_METHOD_ABEXA - LOOP GROUP BY METHOD ABEXA

ABENLOOP_GROUP_BY_METHOD_ABEXA - LOOP GROUP BY METHOD ABEXA

RFUMSV00 - Advance Return for Tax on Sales/Purchases   Vendor Master (General Section)  
This documentation is copyright by SAP AG.
SAP E-Book

- Grouping with LOOP Using a Method

This example demonstrates the construction of the group key using the assignment of return values.

Source Code

Execute

Description

Grouping of an internal table flights with group key binding. The group key of the group loop is constructed as a structure. The return values of the functional method get_time_zone are assigned to the components tz_from and tz_to. The values of the columns airpfrom or airpto are passed to the input parameter of the method. This creates groups of lines that have the same combinations of time zones for the departure and destination airport.

In the simple case shown here, the table expression from the method could of course also be specified directly:

LOOP AT flights INTO DATA(wa)
     GROUP BY ( tz_from = airports[ id = wa-airpfrom ]-time_zone
                tz_to   = airports[ id = wa-airpto   ]-time_zone )
     ASSIGNING FIELD-SYMBOL(group>).

Furthermore, the components size and index are created for the special language elements GROUP SIZE or GROUP INDEX to determine the size and index of each group.

The group key that is bound to a field symbol group> and the additional components are produced in the group loop. In a member loop, the lines of each group are placed in an internal table members using the value operator with the addition BASE. This table is also displayed.

members could also be filled by evaluating a table comprehension using FOR ... IN GROUP, instead of in a member loop LOOP AT GROUP:

members = VALUE #( FOR member> IN GROUP group> ( <member> ) ).

The executable example for grouping with FOR demonstrates how the entire group loop can be implemented using expressions.






BAL Application Log Documentation   SUBST_MERGE_LIST - merge external lists to one complete list with #if... logic for R3up  
This documentation is copyright by SAP AG.

Length: 3231 Date: 20240501 Time: 235430     sap01-206 ( 49 ms )