IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

SAP Discussion :

[ABAP][FACILE]Parcourir une table interne par indexation


Sujet :

SAP

  1. #1
    Inactif  
    Inscrit en
    Mai 2008
    Messages
    135
    Détails du profil
    Informations forums :
    Inscription : Mai 2008
    Messages : 135
    Points : 128
    Points
    128
    Par défaut [ABAP][FACILE]Parcourir une table interne par indexation
    Bonjour,

    j'aimerais parcourir une table interne, par indexation, car je dois effectuer des traitement sur chacun des champs qui compose ma table.


    J'ai ce code mais il ne marche pas ...

    Savez-vous comment puis-je faire ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    DATA: BEGIN OF struc OCCURS 0,
                toto(10)  type C value 'z1',
                titi(10) type C value 'z2',
                tata(10) type C value 'z3',
                tutu(10) type C value 'z4',
                tete(10) type C value 'z5',
    END OF struc.
    
    DATA i TYPE i VALUE 0.
    
    DO 5  TIMES.
      WRITE / struc(i) .
      i = i + 1.
    ENDDO.

    Merci.

  2. #2
    Membre averti
    Inscrit en
    Octobre 2007
    Messages
    313
    Détails du profil
    Informations forums :
    Inscription : Octobre 2007
    Messages : 313
    Points : 375
    Points
    375
    Par défaut
    pour la lecture de zones dynamique dans une structure, tu dois passer par les field symbol

    dans ton field symbol tu assigneras la chaine de caractère "struct-nameN"
    avec N la valeur que tu veux

  3. #3
    Inactif  
    Inscrit en
    Mai 2008
    Messages
    135
    Détails du profil
    Informations forums :
    Inscription : Mai 2008
    Messages : 135
    Points : 128
    Points
    128
    Par défaut
    field symbol ?

    heu, tu pourrais me montrer comment tu l'aurais codé stp ? parce que là je vois pas.

    J'aimerais parcourir ma table automatiquement par ces index à l'aide d'une boucle, pour modifier les champs de ces enregistrements.

    Merci.

  4. #4
    Inactif  
    Inscrit en
    Mai 2008
    Messages
    135
    Détails du profil
    Informations forums :
    Inscription : Mai 2008
    Messages : 135
    Points : 128
    Points
    128
    Par défaut
    punaise, je crois qu'ABAP n'est pas capable de créer une liste de type ...

    pffffou, ste rouille ...

  5. #5
    Membre averti
    Inscrit en
    Octobre 2007
    Messages
    313
    Détails du profil
    Informations forums :
    Inscription : Octobre 2007
    Messages : 313
    Points : 375
    Points
    375
    Par défaut
    bon tu as l'instruction
    loop at tabname.
    ...
    endloop.

    qui boucle sur une table interne

    je te conseille la lecture de http://help.sap.com/printdocu/core/P...CABA/BCABA.pdf

  6. #6
    Inactif  
    Inscrit en
    Mai 2008
    Messages
    135
    Détails du profil
    Informations forums :
    Inscription : Mai 2008
    Messages : 135
    Points : 128
    Points
    128
    Par défaut
    super ... Zzz Zzz Zzz.

    Boucler sur une table interne, j'sais faire.

    Boucler sur une table interne et ensuite boucler sur les champs d'un enregistrement uniquement par indexation, je sais pas faire.

    Si tu sais pas, t'es pas obligé de poster ... au lieu de me filer un tuto de 1500 pages..

  7. #7
    Membre éprouvé Avatar de Celdrøn
    Homme Profil pro
    Consultant SAP
    Inscrit en
    Juillet 2007
    Messages
    614
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Consultant SAP

    Informations forums :
    Inscription : Juillet 2007
    Messages : 614
    Points : 1 008
    Points
    1 008
    Par défaut
    Inspire-toi de ça :
    FIELD-SYMBOLS : < s_tab> TYPE ANY,
    < field> TYPE ANY.

    LOOP AT t_tab ASSIGNING < s_tab>.

    DO.

    ASSIGN COMPONENT sy-index OF STRUCTURE < s_tab> TO < field>.

    IF NOT sy-subrc IS INITIAL.

    WRITE :/ ''.
    EXIT.

    ELSE.

    WRITE : < field>.

    ENDIF.

    ENDDO.

    ENDLOOP. "AT t_tab ASSIGNING < s_tab>.

    Nota: j'ai ajouté un espace pour chaque field-symbol de peur qu'ils soient mal interprétés, pense à les enlever.

    Par contre au passage, change un peu de ton si tu veux bien. Même si l'aide qui t'a été donné n'a pas été suffisante, ce n'est pas une raison pour être désagréable sachant qu'il t'a aidé bénévolement et surement sur son temps de travail ce qui fait qu'il n'a pas eu forcement le temps de développer. Si tu veux un complément d'explication, on le demande et on recherche en attendant.

    Bon courage pour la suite.
    @++.
    Boaf...signature <= ça suffira ça ??

  8. #8
    Inactif  
    Inscrit en
    Mai 2008
    Messages
    135
    Détails du profil
    Informations forums :
    Inscription : Mai 2008
    Messages : 135
    Points : 128
    Points
    128
    Par défaut
    Aidé bénévolement ???

    Et moi aussi je bosse, quand je peux répondre je réponds, certainement pas en envoyant une doc de 1500 pages à la figure d'un questionneur.

    Je préfère aucune réponse que ça.

  9. #9
    Membre éprouvé Avatar de Celdrøn
    Homme Profil pro
    Consultant SAP
    Inscrit en
    Juillet 2007
    Messages
    614
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Consultant SAP

    Informations forums :
    Inscription : Juillet 2007
    Messages : 614
    Points : 1 008
    Points
    1 008
    Par défaut
    Ca n'empêche pas le fait de rester courtois...

    Au fait, la doc fait peut-être 1500 pages, mais j'ai mit 10s à trouver ce que t'avais besoin par le biais du sommaire. (p. 213 "Assigning Components of Structures to a Field Symbol").

    Ce qui fait donc que l'aide de splash1 était utile malgré ce que t'en penses.

    Bref, t'as tout en main pour faire ce dont tu as besoin.

    @++.
    Boaf...signature <= ça suffira ça ??

  10. #10
    Inactif  
    Inscrit en
    Mai 2008
    Messages
    135
    Détails du profil
    Informations forums :
    Inscription : Mai 2008
    Messages : 135
    Points : 128
    Points
    128
    Par défaut
    (soupir),
    j'ai pas dit qu'elle n'est pas utile, je dis que me renvoyer sur google.com aurait été pareil et concernant ABAP je ne comprends pas que dans un langage de programmation le type List ou créer de tableau multidimensionnelle ne soit pas possible (après 1jr de recherche), c'est le b.a.-ba de la programmation etc ... je trouve ça, lourd ... dingue.

    + les 1500 pages de docs, encore ... plus lourd ...

    et pour les fields symbol avec cette façon m'ont problème est résolu depuis ce matin 12h20 avec 4 pages de codes pour faire deux instructions à la noix et je veux pas d'une crasse pareil dans mes appli.

    Donc ma question reste la même, avec une précision qui soulève le problème principale (merci de me le faire souligner).

    Comment créer un tableau multidimensionnelles en Abap ?

    a+

  11. #11
    Membre averti
    Inscrit en
    Octobre 2007
    Messages
    313
    Détails du profil
    Informations forums :
    Inscription : Octobre 2007
    Messages : 313
    Points : 375
    Points
    375
    Par défaut
    merci Celdrøn

    sinon pour ta question : Comment créer un tableau multidimensionnelles en Abap ?

    tu déclares un tableau a l'interieur de ton tableau
    ce qui te rajoute ta dimension

    DATA: BEGIN OF struc OCCURS 0,
    zone1,
    zone2,
    DATA: BEGIN OF struc2 OCCURS 0,
    toto2(10) type C value 'z1',
    titi2(10) type C value 'z2',
    tata2(10) type C value 'z3',
    tutu2(10) type C value 'z4',
    tete2(10) type C value 'z5',
    END OF struc2.
    END OF struc.

  12. #12
    Inactif  
    Inscrit en
    Mai 2008
    Messages
    135
    Détails du profil
    Informations forums :
    Inscription : Mai 2008
    Messages : 135
    Points : 128
    Points
    128
    Par défaut
    ok
    merci.

Discussions similaires

  1. Réponses: 1
    Dernier message: 07/05/2012, 11h03
  2. Réponses: 2
    Dernier message: 25/09/2006, 15h11
  3. [ImageMagick] Parcourir une image pixel par pixel
    Par kip dans le forum Bibliothèques et frameworks
    Réponses: 1
    Dernier message: 05/10/2005, 14h10
  4. aditionner les champs d'une table ligne par ligne
    Par bertrand_declerck dans le forum Bases de données
    Réponses: 3
    Dernier message: 09/08/2005, 08h38
  5. Réponses: 6
    Dernier message: 28/12/2004, 16h09

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo