Parfois, Abap me rend fou de tâches vraiment simples, telles que l'incrémentation d'un entier dans une boucle ...
Voici mon essai: p> Il en résulte que cette erreur Message Type de champ "I" ne permet pas l'accès sous-champs. strong> p> p>
5 Réponses :
euh, je l'ai eu.
Ce sont les espaces F ****** ... fonctionne ... p> p>
... Mais s'il y a un moyen plus élégant, je serais intéressé;)
Vous voulez dire comme: d'ailleurs, lorsque vous bouclez sur une table interne, SY-Tabix a le compteur de boucle. P> P>
Méfiez-vous de boucles dans les boucles. Oh, et si vous bouclez avec un do..times x code>, alors le compteur de boucle sera
sy-index code>. Oui, Abap est une langue terriblement incohérente.
SY-Tabix ne contient pas le compteur de boucle, il contient l'indice de la table. Ce sont souvent des valeurs différentes. Par exemple, si j'écris en boucle sur des messages en msg dans l'endroit où Type = 'E' Code>, la première fois que la boucle fonctionne réellement peut être de la quatrième rangée et la valeur de SY-Tabix sera 4.
Vous avez déjà répondu à la question vous-même, mais pour rendre les choses un peu plus claires: est une expression arithmétique - ajouter 1 à la valeur de la variable. P> variable+1
Merci pour l'explication. Je suis sûr que je ne fais pas de cette erreur à nouveau;)
simple fort> p>
Données: GV_INC Type I. P>
Placez cette déclaration en boucle forte> p>
gv_inc = gv_inc + 1. p>
Si vous allez incrémenter chaque cycle de boucle que vous pouvez obtenir directement la taille de la table.
Peut-être que cela fonctionne dans la nouvelle syntaxe ABAP: lv_id + = 1.