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

IHM Discussion :

[Formulaire]Réduire une multitude d'entrées à UNE dans liste déroulante


Sujet :

IHM

  1. #1
    Membre averti
    Inscrit en
    Avril 2007
    Messages
    28
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 28
    Par défaut [Formulaire]Réduire une multitude d'entrées à UNE dans liste déroulante
    Bonjour,

    J'ai fait une liste déroulante des indices (correspondants à des tarifs), au lieu d'avoir une seule fois un indice, je le retrouve 10 fois minimum.
    Comment faire pour n'en voir en apparaitre qu'un seul?

    Merci de votre aide.

  2. #2
    Membre Expert
    Avatar de Mahefasoa
    Homme Profil pro
    Manager IT
    Inscrit en
    Octobre 2003
    Messages
    835
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Madagascar

    Informations professionnelles :
    Activité : Manager IT

    Informations forums :
    Inscription : Octobre 2003
    Messages : 835
    Par défaut
    Bonjour,
    Citation Envoyé par choups76
    Bonjour,

    J'ai fait une liste déroulante des indices (correspondants à des tarifs), au lieu d'avoir une seule fois un indice, je le retrouve 10 fois minimum.
    Comment faire pour n'en voir en apparaitre qu'un seul?

    Merci de votre aide.
    Tu dois regrouper au niveau du champ Indice dans la requête source de ta liste. Donc dans la propriété Contenu de ta zone de liste, tu écris:
    Code SQL : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    SELECT Table.Indice
    FROM Table
    GROUP BY Table.Indice
    ORDER BY Table.Indice;

    Bon courage et @+

  3. #3
    Membre averti
    Inscrit en
    Avril 2007
    Messages
    28
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 28
    Par défaut
    J'ai essayé mais apparemment je dois mal le placer car ça me met une erreur !!

  4. #4
    Membre confirmé
    Profil pro
    Inscrit en
    Février 2007
    Messages
    198
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 198
    Par défaut
    ecris nous ta requete qui renseigne ta liste ca sera plus clair!
    sinon la solution de Mahefasoa me semble correct.

  5. #5
    Membre averti
    Inscrit en
    Avril 2007
    Messages
    28
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 28
    Par défaut
    La voilà:

    SELECT Personnel.indice, Tarif.num_tarif, Personnel.num_personne
    FROM Tarif INNER JOIN (Personnel INNER JOIN Total ON Personnel.num_personne = Total.num_personne_total) ON Tarif.num_tarif = Total.num_tarif_total;

  6. #6
    Membre Expert
    Avatar de Mahefasoa
    Homme Profil pro
    Manager IT
    Inscrit en
    Octobre 2003
    Messages
    835
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Madagascar

    Informations professionnelles :
    Activité : Manager IT

    Informations forums :
    Inscription : Octobre 2003
    Messages : 835
    Par défaut
    Re,
    Citation Envoyé par choups76
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    SELECT Personnel.indice, Tarif.num_tarif, Personnel.num_personne
    FROM Tarif INNER JOIN (Personnel INNER JOIN Total ON Personnel.num_personne = Total.num_personne_total) ON Tarif.num_tarif = Total.num_tarif_total;
    Si à un enregistrement de la table Personnel correspond à plusieurs enregistrements de la table Total, au niveau des champs de liaison, il est clair que tu n'obtiennes pas une seule occurrence par indice!
    Mais il y a quelque chose qui me chifonne: pourquoi correspondre num_personne de la table Personnel à num_personne_total de la table Total?????

    @+

  7. #7
    Membre confirmé
    Profil pro
    Inscrit en
    Février 2007
    Messages
    198
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 198
    Par défaut
    SELECT Personnel.indice, Tarif.num_tarif, Personnel.num_personne
    FROM Tarif, Personnel, Total
    where Personnel.num_personne = Total.num_personne_total
    and Tarif.num_tarif = Total.num_tarif_total
    group by Personnel.indice, Tarif.num_tarif, Personnel.num_personne
    order by Personnel.indice;

    à tester.

    à mon avis à une personne de la table personnel doit corespondre un tarif (total) num_personne total est une clé étrangère il en a besoin pour la jointure.
    je ne vois pas ce qui te chiffonne

  8. #8
    Membre averti
    Inscrit en
    Avril 2007
    Messages
    28
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 28
    Par défaut
    Pour que quand je sélectionne un indice dans ma liste déroulante le tarif associé s'affiche...mais apparemment à te lire y'a une boulette quelque part

  9. #9
    Membre Expert
    Avatar de Mahefasoa
    Homme Profil pro
    Manager IT
    Inscrit en
    Octobre 2003
    Messages
    835
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Madagascar

    Informations professionnelles :
    Activité : Manager IT

    Informations forums :
    Inscription : Octobre 2003
    Messages : 835
    Par défaut
    Salut,
    Citation Envoyé par mohcultiv
    à mon avis à une personne de la table personnel doit corespondre un tarif (total) num_personne total est une clé étrangère il en a besoin pour la jointure.
    je ne vois pas ce qui te chiffonne
    C'est ce qui me chiffonne justement! Imagines qu'à un enregistrement de la table personne il y ait plusieurs enregistrements de la table Tarif qui correspondent! Dans ce cas, il y est impossible d'obtenir une seule occurrence d'indice! C'est possible!
    A moins que choups nous dise qu'à une personne il n'y a qu'un seul tarif associé.
    Bref, voici un exemple: relation entre élève et notes. Si à chaque élève on fait correspondre une note, il n'y aurait qu'une seule occurrence par élève. Evident! Mais ce n'est pas le cas, à un élève peut correspondre plusieurs notes. Donc il y aura plusieurs occurrence d'un élève ... Assez élémentaire mon cher Watson!
    Autre chose: il y une relation entre Personne et Total au niveau des champs num_personne et num_personne_total. Là aussi il faut expliquer. Car je vois flou. Quel est le rôle de la table Total?


    En résumé: si à un enregistrement de la table du côté clé primaire peut correspondre plusieurs enregistrements de la table du côté de la clé étrangère, il est quasiment impossible (je crois) d'obtenir une seule occurrence de la table de gauche (clé primaire) si la relation est annoncée dans SQL ou si un champ de la table de droite se trouve dans la liste des champs!

    Bon courage et @+

  10. #10
    Membre averti
    Inscrit en
    Avril 2007
    Messages
    28
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 28
    Par défaut Merci de penser à mettre le code entre Balise (Sélectionne le code et clique sur #)
    Deux voire trois personnes peuvent bénéficier du même tarif !

    Mohcultiv, j'ai inséré ta requête:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    SELECT Personnel.indice, Tarif.num_tarif, Personnel.num_personne
    FROM Tarif, Personnel, Total 
    where Personnel.num_personne = Total.num_personne_total 
    and Tarif.num_tarif = Total.num_tarif_total
    group by Personnel.indice, Tarif.num_tarif, Personnel.num_personne
    order by Personnel.indice;
    Mais le problème c'est qu'il y a toujours une quantité phénoménale d'indices, par contre ce qui est bien c'est que c'est classé de 0 à 382, ce que j'aimerai c'est en avoir un de chaque.

Discussions similaires

  1. [XL-2010] Alternative à une multitude de procédures _click dans un userform
    Par Titahn dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 05/06/2013, 16h16
  2. [XL-2010] Parser une multitude de fichiers Word dans un tableau Excel
    Par Aerial dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 31/07/2011, 17h45
  3. Réponses: 12
    Dernier message: 13/08/2009, 10h31
  4. Réponses: 4
    Dernier message: 13/06/2007, 18h42
  5. copie d'une table Y d'une base A vers une table X d'une base
    Par moneyboss dans le forum PostgreSQL
    Réponses: 1
    Dernier message: 30/08/2005, 22h24

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