Czasami ABAP doprowadza mnie do szału z bardzo prostych zadań, takich jak zwiększając liczbę całkowitą w pętli ...Przyrost liczbą całkowitą
Oto moja próba:
METHOD test.
DATA lv_id TYPE integer.
lv_id = 1.
LOOP AT x ASSIGNING <y>.
lv_id = lv_id+1.
ENDLOOP.
ENDMETHOD.
Powoduje to komunikat o błędzie typu polowego "I" nie zezwala na dostęp do podpola.
Dzięki, bardzo pomocne! – Ben
Po prostu uważaj na pętle w pętlach. Aha, i jeśli używasz pętli 'DO..TIMES x', to licznik pętli będzie" SY-INDEX ". Tak, ABAP jest okropnie niespójnym językiem. – Marius
SY-TABIX nie zawiera licznika pętli, zawiera indeks tabeli. Często są to różne wartości. Na przykład, jeśli piszę komunikaty LOOP AT do msg WHERE typ = 'E'', to po raz pierwszy faktycznie uruchomiona pętla może znajdować się w czwartym rzędzie, a wartość sy-tabix będzie równa 4. – Eric