Geschachtelte interne Tabellen
Zwei oder mehrere geschachtelte Tabellen können ebenfalls mit einem einfachen Trick schneller abgearbeitet werden. In diesem Beispiel zeigen wir Ihnen wie das geht.
Geschachtelte Tabellen werden normalerweise in der folgenden Weise bearbeitet:
*** Abarbeitung der äußeren Tabelle
LOOP AT itab1 ASSIGNING <itab1>.
*** Abarbeitung der inneren Tabelle
LOOP AT itab2 ASSIGNING <itab2>
WHERE feld1 = <itab1>-feld1.
ENDLOOP.
ENDLOOP.
Besser ist allerdings die folgende Variante. Sie ist etwas umständlicher, jedoch trotz der Sortierung deutlich schneller.
DATA l_index TYPE sytabix.
SORT: itab1, itab2.
*** Abarbeitung der äußeren Tabelle
LOOP AT itab1 ASSIGNING <itab1>.
*** Ermittlung des ersten Eintrags der inneren Tabelle
READ TABLE itab2 WITH KEY feld1 = <itab1>-feld1.
CHECK sy-subrc = 0.
l_index = sy-tabix.
*** Abarbeitung der inneren Tabelle ab ermitteltem Eintrag
LOOP AT itab2 ASSIGNING <itab2> FROM l_index.
IF <itab1>-feld1 <> <itab2>-feld1.
EXIT.
ELSE.
…
ENDIF.
ENDLOOP. “itab2.
ENDLOOP. “itab1.
- 7. December: Excel Racing Simulation – Root Vole Race - 7. Dezember 2024
- 5. December: ABAPConf - 5. Dezember 2024
- 4. December: Only a lazy developer is a good developer - 4. Dezember 2024