Bjuti hat geschrieben:Aber ich komme leider auf keinen grünen Zweig.
Code: Alles auswählen.
LOOP AT itab INTO wa WHERE spalte2 = 'X'.
MODIFY itab FROM wa TRANSPORTING spalte3 WHERE spalte1 = wa-spalte1.
ENDLOOP.
Code: Alles auswählen.
LOOP AT lt_table ASSIGNING <ls_line1> WHERE spalte2 EQ 'X'.
LOOP AT lt_table ASSIGNING <ls_line2> WHERE spalte1 EQ <ls_line1>-spalte1.
<ls_line2>-spalte3 = <ls_line1>-spalte3.
ENDLOOP.
ENDLOOP.
Code: Alles auswählen.
LOOP AT lt_table ASSIGNING <ls_line> WHERE spalte2 EQ 'X'.
MODIFY lt_table FROM <ls_line> TRANSPORTING spalte3 WHERE spalte1 EQ <ls_line>-spalte1.
ENDLOOP.
a-dead-trousers hat geschrieben:Ohne geschachtelter Schleife sollte es sogar noch einen Tick schneller sein![]()
Code: Alles auswählen.
LOOP AT lt_table ASSIGNING <ls_line> WHERE spalte2 EQ 'X'. MODIFY lt_table FROM <ls_line> TRANSPORTING spalte3 WHERE spalte1 EQ <ls_line>-spalte1. ENDLOOP.
Bjuti hat geschrieben:Ein Problem schließt sich aber an. Die Zielspalte soll nun eine andere sein:
Code: Alles auswählen.
LOOP AT itab INTO wa WHERE spalte2 = 'X'.
wa-zielspalte = wa-spalte3. "Zielspalte füllen
MODIFY itab FROM wa TRANSPORTING zielspalte WHERE spalte1 = wa-spalte1 AND spalt2 <> 'X'.
ENDLOOP.