1. Ce site utilise des cookies. En continuant à utiliser ce site, vous acceptez l'utilisation des cookies. En savoir plus.
  2. Bonjour tout le monde ! Veillez consulter la Politique de forum pour comprendre nos règles, Merci a vous !
    Rejeter la notice

DEBUTANT boucle POUR

Discussion dans 'Windev' créé par gapplicat, Mar 13, 2018.

  1. gapplicat

    gapplicat Well-Known Member
    MEMBRE WX

    Inscrit:
    Mar 8, 2018
    Messages:
    399
    J'aime reçus:
    708
    Juste une petite analyse de la commande POUR et des différentes syntaxes pour le parcours d'une table :


    Code (Text):

    POUR i=1 A TableOccurrence(TABLE1)
       // traitement
    FIN
     
    Depuis plusieurs versions, une information indiquant que cette syntaxe n'est pas conseillée car il est préférable de ne pas réévaluer à chaque fois le nombre de lignes et donc d'utiliser une variable avant, ce qui me semble judicieux. Donc, j'ai fait tout comme on me le suggérait :

    Code (Text):

    NB est un entier = TableOccurrence(TABLE1)
    POUR i=1 A NB
       // traitement
    FIN
     
    Maintenant il est possible de faire beaucoup plus simple en utilisant le mot clé "_A_" dans la boucle (un peu comme les mots clés _ET_ et _OU_) qui permet de faire la même optimisation, donc en économisant la variable temporaire.

    Code (Text):
     
    POUR i=1 _A_ TableOccurrence(TABLE1)
       // traitement
    FIN

     
     
  2. aminej76

    aminej76 Active Member
    MEMBRE WX

    Inscrit:
    Jan 23, 2018
    Messages:
    283
    J'aime reçus:
    102
    une autre optimisation :
    La commande TABLE1..Occurrence
    Code (Text):
    POUR i=1 _A_ TABLE1..Occurrence
       // traitement
    FIN
     
    LAPIPE2018 et gapplicat aiment ça.
  3. Fouedusa

    Fouedusa Active Member

    Inscrit:
    Avr 22, 2018
    Messages:
    132
    J'aime reçus:
    120
    Bonjour;
    Quelle est la différence entre :

    - TableOccurrence(TABLE)
    et
    - TABLE..Occurrence
    SVP.

    Merci d'avance
     
  4. Mohamed

    Mohamed Active Member

    Inscrit:
    Jan 15, 2018
    Messages:
    304
    J'aime reçus:
    59
    Pcsoft confirme que table..occurence est rapide que tableoccurence
     
    joker apprécie ceci.
  5. suenodesign

    suenodesign Well-Known Member
    MEMBRE WX

    Inscrit:
    Jan 1, 2018
    Messages:
    507
    J'aime reçus:
    732

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    Bonjour;
    Quelle est la différence entre :

    - TableOccurrence(TABLE)
    et
    - TABLE..Occurrence
    SVP.

    Merci d'avance
    Cliquez pour agrandir...
    Pour TableOccurrence(TABLE) : C'est la fonction WL qui accède au champ table et renvoie le nombre total de ses ligne

    Pour TABLE..Occurrence : C'est le champ lui même qui te renvoie une de ses propriétés

    D'où la rapidité de : TABLE..Occurrence
     
    joker et aminej76 aiment ça.
  • Fouedusa

    Fouedusa Active Member

    Inscrit:
    Avr 22, 2018
    Messages:
    132
    J'aime reçus:
    120
    et moi qui utilise toujours TableOccurrence(TABLE), aller je vais tout changer.
    Merci beaucoup les amis
     
  • aminej76

    aminej76 Active Member
    MEMBRE WX

    Inscrit:
    Jan 23, 2018
    Messages:
    283
    J'aime reçus:
    102
    vous distinguez la différence si cous TableOccurrence(TABLE) dans une boucle ou bien se repete plusieurs fois dans un script.
    A mon avis ce n'est obligatoire de changer vers table..occuence si vous n'avez pas une répition
     
    Gemini1961 apprécie ceci.
  • Partager cette page

    Chargement...