Manchmal ABAP treibt mich mit wirklich einfachen Aufgaben verrückt wie eine ganze Zahl innerhalb einer Schleife erhöht wird ...Increment eine ganze Zahl
Hier ist mein Versuch:
METHOD test.
DATA lv_id TYPE integer.
lv_id = 1.
LOOP AT x ASSIGNING <y>.
lv_id = lv_id+1.
ENDLOOP.
ENDMETHOD.
Dies führt zu der Fehlermeldung Feldtyp "I" erlaubt keinen Teilfeldzugriff.
Danke, sehr hilfreich! – Ben
Achten Sie nur auf Schleifen in Schleifen. Oh, und wenn Sie mit einem "DO..TIMES x" loopen, dann ist der Loop-Zähler "SY-INDEX". Ja, ABAP ist eine schrecklich inkonsistente Sprache. – Marius
SY-TABIX enthält den Schleifenzähler nicht, er enthält den Tabellenindex. Dies sind oft unterschiedliche Werte. Wenn ich zum Beispiel 'LOOP AT Nachrichten IN msg WHERE type = 'E' schreibe, könnte das erste Mal, wenn die Schleife tatsächlich ausgeführt wird, in der vierten Zeile stehen, und der Wert von sy-tabix ist 4. – Eric