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 :

champ combo dans table


Sujet :

WinDev

  1. #1
    Membre régulier
    Inscrit en
    Mars 2010
    Messages
    469
    Détails du profil
    Informations forums :
    Inscription : Mars 2010
    Messages : 469
    Points : 121
    Points
    121
    Par défaut champ combo dans table
    hello tout le monde !

    encore besoin de vos lumières... vais essayer d'être simple...

    j'ai un champ table dans une fenêtre.
    Dans celui-ci j'ai un premier champ de type combo alimentée par un fichier de mon analyse. (jusque la pas de soucis...)

    Mais j'ai également un deuxième champ de type combo alimentée par une requête.
    Celle-ci est paramétrée, car son contenu dépend de la valeur de la première combo...

    oula j'espère que vous avez compris...

    Je n'ai pas de soucis si ces combos n,étaient pas dans un champ table...

    mais j'arrive pas à réinitialiser la requête lors du changement de ligne. j'utilise :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    HExécuteRequête(MaRequete,hRequêteDéfaut,COL_Combo1[IndiceEnCours]..Valeur)
    dans l'evenement entrée dans Colonne de ma 2 ème combo.

    Et ben ça marche pas... j'ai l'impression que la requete du 2ème champ combo est identique pour toute les lignes de ma table...
    D'ailleur j'ai cru lire dans l'aide WinDev qu'une requete paramétrée d'une combo d'un champ table est identique pour toutes les lignes...

    ça vous parle ?

    y a un moyen pour y parvenir ?

    merci pour votre aide !!!

  2. #2
    Rédacteur/Modérateur

    Homme Profil pro
    Ingénieur qualité méthodes
    Inscrit en
    Décembre 2013
    Messages
    4 053
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur qualité méthodes
    Secteur : Conseil

    Informations forums :
    Inscription : Décembre 2013
    Messages : 4 053
    Points : 9 392
    Points
    9 392
    Par défaut
    Ta première combo a un nombre limité de valeurs, disons 5.
    Pour la 2ème combo, tu as donc 5 variantes seulement.
    En terme de performance,tu as probablement intérêt à préparer un tableau de 5 chaines avec les 5 options possibles. Et quand l'utilisateur modifie le contenu de COMBO1, tu modifies immédiatement le contenu de combo2. Non plus en exécutant une requête qui va lire des données sur un serveur éventuellement loin, mais par 2 ou 3 lignes de code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    listesupprimetout( combo2[i] )
    listeajoute( combo2, tbchaines[combo1[i] )
    N'oubliez pas le bouton Résolu si vous avez obtenu une réponse à votre question.

  3. #3
    Membre régulier
    Inscrit en
    Mars 2010
    Messages
    469
    Détails du profil
    Informations forums :
    Inscription : Mars 2010
    Messages : 469
    Points : 121
    Points
    121
    Par défaut
    tu veux dire qu'il faudrait remplir la combo 2 par programmation ?

    Mais il m'est impossible d'atteindre les champs combo par programmation !!!

    Je parle bien de champs combo dans une table !

  4. #4
    Membre régulier
    Inscrit en
    Mars 2010
    Messages
    469
    Détails du profil
    Informations forums :
    Inscription : Mars 2010
    Messages : 469
    Points : 121
    Points
    121
    Par défaut
    je crois avoir trouvé la solution :

    https://doc.pcsoft.fr/?1000017242&na...tenu_propriete

    ça ressemble à un remplissage manuel grâce à la propriété ..contenu et au glien...

    pour le moment j'obtiens ce que je veux

  5. #5
    Membre éclairé
    Profil pro
    Développeur informatique
    Inscrit en
    Février 2007
    Messages
    615
    Détails du profil
    Informations personnelles :
    Localisation : France

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

    Informations forums :
    Inscription : Février 2007
    Messages : 615
    Points : 841
    Points
    841
    Par défaut
    Bonjour,
    Citation Envoyé par jjacques68 Voir le message
    tu veux dire qu'il faudrait remplir la combo 2 par programmation ?
    Oui, tu peux remplir ta combo2 par programmation à chaque sélection d'une ligne de ta combo1 de ta table

    tu peux faire un truc du style (non testé) :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    listesupprimetout(table[i].col_combo2)
    hexecuterequete(...)
    pour tout marequete
    listeajoute(table[i].col_combo2,marequete.valeur)
    fin
    Bon dev
    Gancau

Discussions similaires

  1. Réponses: 7
    Dernier message: 18/03/2016, 14h42
  2. [WD16] Remplir & Initialiser un champ COMBO dans une TABLE
    Par gardangel dans le forum WinDev
    Réponses: 2
    Dernier message: 01/02/2012, 17h01
  3. [WD16] Champ combo dans table
    Par WDKyle dans le forum WinDev
    Réponses: 14
    Dernier message: 17/03/2011, 17h49
  4. programmer un champ combo dans une table
    Par cool dans le forum WinDev
    Réponses: 2
    Dernier message: 16/07/2007, 11h54
  5. Champ text dans table inserted ?
    Par devdev dans le forum MS SQL Server
    Réponses: 3
    Dernier message: 28/06/2004, 17h00

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