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

WinDev Discussion :

Calcul entre deux colonnes d'une table


Sujet :

WinDev

  1. #1
    Nouveau Candidat au Club
    Homme Profil pro
    Inscrit en
    Septembre 2013
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations forums :
    Inscription : Septembre 2013
    Messages : 2
    Points : 1
    Points
    1
    Par défaut Calcul entre deux colonnes d'une table
    Bonjour, je suis tout nouveau sur windev...

    J'essaie avec le code suivant :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    POUR TOUTE LIGNE DE TABLE_Articles 
    	SI COL_Quantitémini - COL_Quantitédispo < COL_Quantitémini ALORS
    		TableAjouteLigne(TABLE_Articlesàcommander,COL_Nomdelarticle,COL_Quantitémini-COL_Quantitédispo)
    FIN
     
    FIN
    de remplir une autre table qui ne contiendra plus que les articles qui sont en quantité insuffisante ainsi que la quantité à commander.

    Seulement cela fonctionne mais uniquement sur la première ligne de ma table ou alors la ligne que j'ai séléctionné.

    Est-ce que quelqu'un a une solution ??

  2. #2
    Membre émérite
    Homme Profil pro
    Développeur et responsable micros/réseaux
    Inscrit en
    Octobre 2010
    Messages
    1 286
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur et responsable micros/réseaux
    Secteur : Bâtiment

    Informations forums :
    Inscription : Octobre 2010
    Messages : 1 286
    Points : 2 562
    Points
    2 562
    Par défaut
    Bonjour,

    essaye en préfixant les noms de colonnes :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    POUR TOUTE LIGNE DE TABLE_Articles 
          SI TABLE_Articles.COL_Quantitédispo < TABLE_Articles.COL_Quantitémini ALORS
              TableAjouteLigne(TABLE_Articlesàcommander,TABLE_Articles.COL_Nomdelarticle,TABLE_Articles.COL_Quantitémini-TABLE_Articles.COL_Quantitédispo)
         FIN
    FIN
    à bientôt,

    Nicolas

  3. #3
    Membre à l'essai
    Homme Profil pro
    Inscrit en
    Février 2013
    Messages
    43
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Février 2013
    Messages : 43
    Points : 23
    Points
    23
    Par défaut
    Bonjour,

    Ce n'est pas la même question mais cela reste du même type

    http://www.developpez.net/forums/d13...ne-dans-table/

    Si cela peut t'aider....

  4. #4
    Nouveau Candidat au Club
    Homme Profil pro
    Inscrit en
    Septembre 2013
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations forums :
    Inscription : Septembre 2013
    Messages : 2
    Points : 1
    Points
    1
    Par défaut 😭
    Bonsoir a vous

    Merci pour vos réponses mais cela ne fonctionne pas quand même.

    C'est désespérant...

  5. #5
    Membre habitué
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2013
    Messages
    91
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2013
    Messages : 91
    Points : 136
    Points
    136
    Par défaut
    bonjour

    1) vous voulez ajouter une ligne selon 1 cas dans le parcours de cette meme table c'est bien cela ?

    2) déjà est ce que la table est triée par programmation avant ?

    3) à quel "endroit" voulez vous ajouter la ligne : à la fin , n'importe ou , juste après la ligne testée ?

    4) utiliser une variable pour le nombre de lignes totales de la table avant traitement car celui ci va évoluer avec le tableajoute ; par ex :
    TOTTABLE est un entier=tableoccurrence(Table_Articles)
    LIGNE est un entier=0
    tabletrie(Table_Articles,faux)
    pour LIGNE=1 a TOTTABLE
    ...
    FIN
    si vous faites un tableajoute alors cela ajoutera une ligne à la fin ( car la table n'est pas triée )

    5) ensuite dans tous les traitements ajouter l'indice de la table aux noms des colonnes :
    SI TABLE_Articles.COL_Quantitédispo < TABLE_Articles.COL_Quantitémini ALORS
    => SI TABLE_Articles.COL_Quantitédispo[LIGNE] < TABLE_Articles.COL_Quantitémini[LIGNE] ALORS

    6) quand vous faites le tableajoute l'indice est : tableoccurrence(Table_Articles) (+1 aprés chaque tableajoute )
    faire tableajoute(Table_Articles,"")
    Table_Articles.Nomdelacolonne1[tableoccurrence(Table_Articles)]= ...
    Table_Articles.Nomdelacolonne2[tableoccurrence(Table_Articles)]= ...
    etc ... remplir toutes les colonnes
    vous pouvez vous servir dans ce traitement de
    TABLE_Articles.COL_Quantitémini[LIGNE]-TABLE_Articles.COL_Quantitédispo[LIGNE] par exemple

    7) ensuite vous pouvez refaire un tabletri si nécessaire

    bon dev

Discussions similaires

  1. [AC-2010] Erreur entre deux formulaires et une table
    Par byters dans le forum IHM
    Réponses: 4
    Dernier message: 08/05/2013, 22h58
  2. Réponses: 7
    Dernier message: 31/08/2012, 18h42
  3. Lien entre deux colonnes dans une liste (utilisation de combobox)
    Par cantanna1988 dans le forum SharePoint
    Réponses: 7
    Dernier message: 02/03/2009, 17h10
  4. calcul entre deux champs dans une table
    Par pomar dans le forum Access
    Réponses: 7
    Dernier message: 29/11/2006, 18h27
  5. Comparaison entre deux dates dans une table
    Par Biskot75 dans le forum Access
    Réponses: 6
    Dernier message: 19/09/2006, 11h16

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