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 :

Liste sur table distante sélection via formulaire


Sujet :

IHM

  1. #1
    Futur Membre du Club
    Homme Profil pro
    Chômeur
    Inscrit en
    Février 2018
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Chômeur

    Informations forums :
    Inscription : Février 2018
    Messages : 6
    Points : 5
    Points
    5
    Par défaut Liste sur table distante sélection via formulaire
    Bonjour,

    Cela fait quelques temps que je planche sur un problème de liste afin de sélectionner un enregistrement, je poste les relations ça sera très clair:
    Nom : Relations.png
Affichages : 78
Taille : 8,0 Ko

    En temps normal, par exemple sur la relation Devis-Clients, je fais dans mon formulaire "Ajout devis" une première liste déroulante sur le nom du client, et une seconde liste déroulante avec un WHERE sur le résultat de la première afin de sélectionner la clé primaire de la table client à relier à la table Devis en clé étrangère (grâce à une colonne caché dans la liste avec un SELECT DISTINCT Client_ID, Client_Nom).

    Le problème arrive dans le formulaire Commande, je souhaites raccorder une commande à un devis mais je n'arrive pas à sélectionner le devis (qui ne contient que la clé Client_Id) en utilisant le Nom et Prénom de la table Clients par une liste. C'est possible de faire un RechDom sur la sélection du Client_Idf pour faire apparaitre les infos, mais ça ne permet pas directement de sélectionner comme dans une liste. Avez-vous une astuce ?

    P.S. Je compte ajouter une troisième liste en cascade sur la prestation (le champs description, qui est unique) afin de sélectionner le devis, vu la relation une sélection du devis par le client seul est insuffisante j'en suis bien conscient désolé pour ceux qui ont sauté au plafond...

  2. #2
    Futur Membre du Club
    Homme Profil pro
    Chômeur
    Inscrit en
    Février 2018
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Chômeur

    Informations forums :
    Inscription : Février 2018
    Messages : 6
    Points : 5
    Points
    5
    Par défaut
    J'ai peut-être une piste, la clé Client_Id de la table Client est la même que Client_Idf présente dans la table Devis. Du coup il suffit de sélectionner la clé client dans la table client (avec Nom et Prénom) et de finir sur un WHERE
    Client_Idf = [Client]. Ça soulève une autre question, l'utilisateur va sélectionner un prénom dans la seconde liste, qui contient en réalité deux colonnes dont la clé client qui est caché, je ferais le test ce soir mais peut-on selectionner la colonne dans l'expression Client_Idf = [Client]

    Test fait, ça fonctionne . Avec la colonne liée. C'est la première fois que j'utilise Access, les possibilités sont dingues mais notamment sur les formulaires j'ai l'impression de bricoler en permanence surement un manque de bonnes pratiques.

  3. #3
    Expert éminent
    Homme Profil pro
    Webplanneur
    Inscrit en
    Octobre 2007
    Messages
    4 262
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 59
    Localisation : Réunion

    Informations professionnelles :
    Activité : Webplanneur

    Informations forums :
    Inscription : Octobre 2007
    Messages : 4 262
    Points : 6 561
    Points
    6 561
    Par défaut
    Salut
    Je ne comprends pas trop bien la construction de vos listes déroulantes et le reste.
    La FAQ Access ici
    Une vidéo ici pour créer et alimenter une liste déroulante.
    "Le savoir est la seule matière qui s'accroit quand on la partage" (Socrate)
    UR - ESIROI - GPME/CG/DCG8
    QTH :21°19'18"S - 055°25'32"E
    Inutile de me contacter par MP
    Merci de cliquer sur si la réponse vous a permis de résoudre votre problème et n'oubliez pas de clôturer le fil en cliquant sur

  4. #4
    Membre confirmé Avatar de morobaboumar
    Homme Profil pro
    Enseignant
    Inscrit en
    Septembre 2009
    Messages
    1 114
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Septembre 2009
    Messages : 1 114
    Points : 491
    Points
    491
    Par défaut
    Bonsoir Animabis,
    Si j'ai compris voudrais tu créer une application des gestion de facture ?
    Je te donne un cadeau afin que tu t en inspire pour créer ce que tu recherche.
    Pièce jointe

    Nom : CaptureRelationsTablesFacture.PNG
Affichages : 76
Taille : 16,5 Ko

    Cordialement
    Je ne Suis Pas un Expert en Programmation
    Le savoir est la lumière de l'esprit
    Le chemin de la réussite

    Les savants sont les héritiers de la science
    Qui cherche positivement trouve
    Tout ce qui brille n'est pas l'or ou diamant
    Mais l'or et le diamant se trouvent avec sagesse, intelligence et effort

  5. #5
    Futur Membre du Club
    Homme Profil pro
    Chômeur
    Inscrit en
    Février 2018
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Chômeur

    Informations forums :
    Inscription : Février 2018
    Messages : 6
    Points : 5
    Points
    5
    Par défaut
    Bonjour,

    Merci pour vos réponses !

    @Hyperion, Oui, vous passez par une requête. Dans mon cas il s'agit de deux listes en cascade pour sélectionner l'ID client correspondant, la première filtre par Nom et la seconde par Prenom. Pour éviter de passer par une requête je tape directement par exemple:
    SELECT DISTINCT Clients_Nom FROM T_Clients ORDER BY Clients_Nom; dans le contenu de la premiere liste dont le nom du contrôle est [Nom].
    SELECT DISTINCT Clients_Id, Clients_Prenom FROM T_Clients WHERE Clients_Nom = [Nom] ORDER BY Clients_Prenom; dans le contenu de la seconde liste (avec un requery sur la perte de focus de la première liste évidemment)

    Ça evite de multiplier les requêtes pour une simple sélection d'ID, et dans ce cas j'utilise ces deux listes pour éviter de sélectionner par ID, logique on recherche un client par son nom/prénom, pas par un ID qui ne veut pas dire grand chose pour l'utilisateur (et pour bien faire les choses il faudrait rajouter un autre champs permettant d'identifier un client sur un autre critère type adresse, tel, dans le cas de deux clients possédant le même nom et prénom)

    @morobaboumar, merci pour les ressources. Mes tables et relations sont je crois comme je les souhaite, mais je vais lire ce PDF qui semble intéressant, merci !

  6. #6
    Membre confirmé Avatar de morobaboumar
    Homme Profil pro
    Enseignant
    Inscrit en
    Septembre 2009
    Messages
    1 114
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Septembre 2009
    Messages : 1 114
    Points : 491
    Points
    491
    Par défaut
    Bonsoir Animabis,
    Pourriez vous poster une copie de votre application ?
    Cela aide à mieux comprendre et trouver une solution convenable à votre recherche.
    Bonne continuation.
    Cordialement.
    Je ne Suis Pas un Expert en Programmation
    Le savoir est la lumière de l'esprit
    Le chemin de la réussite

    Les savants sont les héritiers de la science
    Qui cherche positivement trouve
    Tout ce qui brille n'est pas l'or ou diamant
    Mais l'or et le diamant se trouvent avec sagesse, intelligence et effort

Discussions similaires

  1. Réponses: 3
    Dernier message: 08/04/2019, 07h38
  2. [AC-2002] Problème de perte de décimale sur table Oracle liée via ODBC
    Par prpa11 dans le forum Access
    Réponses: 2
    Dernier message: 26/05/2014, 18h03
  3. [AC-97] zone de liste sur table intermediaire
    Par claude21 dans le forum Access
    Réponses: 1
    Dernier message: 30/06/2011, 16h48
  4. Exemple de sélection via formulaire
    Par wiwi dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 03/10/2008, 19h26
  5. Réponses: 7
    Dernier message: 04/02/2008, 18h52

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