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

Modélisation Discussion :

Liste déroulante liée et sous-formulaire [AC-2016]


Sujet :

Modélisation

  1. #1
    Membre à l'essai
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Août 2017
    Messages
    18
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Août 2017
    Messages : 18
    Points : 10
    Points
    10
    Par défaut Liste déroulante liée et sous-formulaire
    Bonjour,

    Je développe une base de donnée qui me permettra, entre autre, de passer des commande pour réserver des véhicules. Pour ce faire j'ai donc créé mon formulaire de commande avec un sous formulaire de détail, dans ce sous formulaire j'ai souhaité créer un premier champ (avec liste déroulante) permettant de choisir le type de véhicule puis un second (toujours avec liste déroulante) pour choisir le numéro du véhicule. Ces deux champs devant être liés j'ai suivi ce petit tuto, malheureusement je ne parviens pas au résultat escompté... enfin pour être précis, les champs liés fonctionnent quand je n'ouvre que le sous-formulaire mais ne fonctionnent pas lorsque j'ouvre le formulaire parent !

    Quelques détails sur ma BDD :

    Nom : Sans titre2.png
Affichages : 1321
Taille : 7,4 Ko

    L'ébauche du formulaire de saisie de commande :

    Nom : Sans titre3.png
Affichages : 1350
Taille : 12,0 Ko

    La requête SQL pour le contenu de ma liste déroulante [NumVoiture] dans le sous-formulaire est la suivante :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT T_Voiture.IdVoiture, T_Voiture.NumVoiture FROM T_Voiture WHERE T_Voiture.IdType = Forms!SF_Commande.lst_type;
    Et enfin, le principal, le message d'erreur ! :

    Nom : Sans titre4.png
Affichages : 1342
Taille : 14,4 Ko

    Pour rappel, ce message d'erreur n'a lieu que lors de la saisie depuis le formulaire principal, quand j'ouvre directement le sous-formulaire tout fonctionne.

    Quelqu'un pourrait-il m'aider ?

    Cordialement.

  2. #2
    Expert éminent sénior
    Avatar de tee_grandbois
    Homme Profil pro
    retraité
    Inscrit en
    Novembre 2004
    Messages
    8 648
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : retraité

    Informations forums :
    Inscription : Novembre 2004
    Messages : 8 648
    Points : 14 626
    Points
    14 626
    Par défaut
    bonsoir,
    il faut utiliser le formulaire principal ET le sous-formulaire comme référence:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    WHERE T_Voiture.IdType = Forms!{NomFormulairePrincipal]![SF_Commande].Form.lst_type;
    Quand on est derrière l'écran on n'a aucun clavier sous les mains ...
    ah non ? donc devant l'écran c'est la connectique ?

  3. #3
    Membre à l'essai
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Août 2017
    Messages
    18
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Août 2017
    Messages : 18
    Points : 10
    Points
    10
    Par défaut
    Autant pour moi, je viens de trouver la solution sur le site de microsoft ^^

    Merci tout de même tee_grandbois pour ta réponse rapide ! Et encore désolé du dérangement...

  4. #4
    Membre à l'essai
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Août 2017
    Messages
    18
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Août 2017
    Messages : 18
    Points : 10
    Points
    10
    Par défaut
    Bonjour, bonjour !

    Désolé de "déterrer" le topic mais je viens de me rendre compte d'un "petit" défaut sur mon formulaire... non en fait c'est carrément un défaut énorme, je comprend même pas comment j'ai pu ne pas le voir -_-'

    En fait, il semblerait que la méthode ".requery" indiquée dans le tuto mentionné précédemment (qui permet de réactualiser la source du champs [NumVoiture] en fonction du type de véhicule choisi) réactualise le champs en question pour TOUTES les lignes du sous-formulaire !!! Par conséquent il m'est impossible de créer une commande avec plusieurs types de véhicules différents ! (dés que je tente de sélectionner un autre type de véhicule, la première ligne ce réinitialise...

    Comment faire pour que le ".requery" ne s'applique qu'à la ligne en cours de modification ?

    Merci d'avance.

  5. #5
    Expert éminent sénior
    Avatar de tee_grandbois
    Homme Profil pro
    retraité
    Inscrit en
    Novembre 2004
    Messages
    8 648
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : retraité

    Informations forums :
    Inscription : Novembre 2004
    Messages : 8 648
    Points : 14 626
    Points
    14 626
    Par défaut
    bonjour,
    dans ce cas, il faut enlever la clause WHERE dans la liste déroulante, puisque c'est sur chaque ligne que se fait la sélection.
    Quand on est derrière l'écran on n'a aucun clavier sous les mains ...
    ah non ? donc devant l'écran c'est la connectique ?

  6. #6
    Membre à l'essai
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Août 2017
    Messages
    18
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Août 2017
    Messages : 18
    Points : 10
    Points
    10
    Par défaut
    Bonjour tee_grandbois !

    Mais dans ce cas comment adapter la liste déroulante du champ "NumVoiture" au choix du type de véhicule choisi ?

  7. #7
    Expert éminent sénior
    Avatar de tee_grandbois
    Homme Profil pro
    retraité
    Inscrit en
    Novembre 2004
    Messages
    8 648
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : retraité

    Informations forums :
    Inscription : Novembre 2004
    Messages : 8 648
    Points : 14 626
    Points
    14 626
    Par défaut
    mettre les liste déroulantes au niveau du sous-formulaire ne fera que modifier les données.
    En fait, le choix doit se faire au niveau du formulaire, c'est donc là qu'il faut mettre les listes déroulantes (qui seront donc indépendants, c'est à dire sans données) ainsi, cela permettra de filtrer les enregistrements du sous-formulaire:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT T_Voiture.IdVoiture, T_Voiture.NumVoiture FROM T_Voiture WHERE T_Voiture.IdType = Forms!FORMULAIREPRINCIPAL.lst_type;
    ou alors je n'ai pas compris (ce qui est possible ...)
    Quand on est derrière l'écran on n'a aucun clavier sous les mains ...
    ah non ? donc devant l'écran c'est la connectique ?

  8. #8
    Membre à l'essai
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Août 2017
    Messages
    18
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Août 2017
    Messages : 18
    Points : 10
    Points
    10
    Par défaut
    Le problème de ta solution c'est que du coup pour une commande donnée, je ne pourrai commander qu'un seul type de véhicule... (puisque le choix du type sera fait dans le formulaire principal et non plus dans chaque ligne du détail de la commande)

  9. #9
    Expert éminent sénior
    Avatar de tee_grandbois
    Homme Profil pro
    retraité
    Inscrit en
    Novembre 2004
    Messages
    8 648
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : retraité

    Informations forums :
    Inscription : Novembre 2004
    Messages : 8 648
    Points : 14 626
    Points
    14 626
    Par défaut
    dans ce cas explique dans le détail ce que tu souhaites faire avec, si possible des exemples.
    Quand on est derrière l'écran on n'a aucun clavier sous les mains ...
    ah non ? donc devant l'écran c'est la connectique ?

  10. #10
    Expert éminent sénior
    Avatar de tee_grandbois
    Homme Profil pro
    retraité
    Inscrit en
    Novembre 2004
    Messages
    8 648
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : retraité

    Informations forums :
    Inscription : Novembre 2004
    Messages : 8 648
    Points : 14 626
    Points
    14 626
    Par défaut
    le champ type dans le sous-formulaire est indépendant (il n'appartient à aucun champ la table T_Detail, je pense), il ne peut donc pas être mis à jour pour une seule ligne.
    Il faudrait revoir la conception des formulaires
    Quand on est derrière l'écran on n'a aucun clavier sous les mains ...
    ah non ? donc devant l'écran c'est la connectique ?

  11. #11
    Expert éminent sénior
    Avatar de tee_grandbois
    Homme Profil pro
    retraité
    Inscrit en
    Novembre 2004
    Messages
    8 648
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : retraité

    Informations forums :
    Inscription : Novembre 2004
    Messages : 8 648
    Points : 14 626
    Points
    14 626
    Par défaut
    une solution peut-être dans cette base d'exemple:
    ResaVehicules.rar
    - la sélection (type et véhicules disponibles) se fait depuis le formulaire principal
    - le bouton "Ajouter la sélection" insère les véhicules sélectionnés dans le sous-formulaire
    - dans le sous-formulaire on peut décocher un véhicule qui redevient disponible
    Quand on est derrière l'écran on n'a aucun clavier sous les mains ...
    ah non ? donc devant l'écran c'est la connectique ?

  12. #12
    Membre à l'essai
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Août 2017
    Messages
    18
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Août 2017
    Messages : 18
    Points : 10
    Points
    10
    Par défaut
    Il faut encore que je farfouille un peut pour comprendre comment cela fonctionne (afin de pouvoir le transposer dans ma base) mais il semblerait que cette solution soit... juste parfaite !!!!

    tee_grandbois => Tu es un dieu d'access ^^

    EDIT : J'ai dû revoir complétement le fonctionnement de mon formulaire de commande mais à présent tout fonctionne parfaitement ! C'est RÉSOLU !!! encore merci.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [AC-2007] Listes déroulantes liées et sous-formulaires
    Par Skratt dans le forum IHM
    Réponses: 2
    Dernier message: 13/03/2013, 23h16
  2. [AC-2007] Actualiser liste déroulante liée dans sous-formulaire
    Par Elno11 dans le forum IHM
    Réponses: 5
    Dernier message: 24/12/2012, 14h42
  3. Réponses: 10
    Dernier message: 21/09/2010, 16h53
  4. Réponses: 0
    Dernier message: 10/10/2007, 16h40
  5. Zone de liste déroulante dépendante et sous-formulaire
    Par Philosophine dans le forum Access
    Réponses: 6
    Dernier message: 24/10/2006, 22h41

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