|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Candidat au titre de Membre du Club
![]() Inscription : août 2006 Messages : 45 ![]() |
Bonjour à tous et merci pour vos contributions,
Ayant table1 et table2, Dans table1 : 3 champs : a (primaire), b et c (j'ai rempli quelques lignes de cette table pour l'exemple) Dans table2 : 3 champs : d (primaire), e et f Une relation avec intégrité ref lie ces 2 tables de a (1) vers e (plusieurs) J'ai créé une requete avec tous les champs de ces 2 tables et une jointure à gauche (tous sur table1) Ce qui se passe : Lorsque j'entre une valeur en premier en e qui correspond à a, cela rempli a, b et c automatiquement et c'est parfait. Par contre lorsque je rempli une valeur en premier en e qui ne correspond pas à a, cela me refuse l'enregistrement. Lorsque j'entre une valeur en premier en a qui n'existe pas déja, cela me permet d'enregistrer (et me rempli automatiquement e), c'est parfait. Par contre lorsque je rempli une valeur en premier en a qui correspond à un a existant, cela me refuse l'enregistrement. Bref, je comprends le fonctionnement mais moi je souhaiterais créer une requete avec un mode de fonctionnement différent. Je base un formulaire sur cette requete et je voudrais lier une textbox à un champ d'une requete afin de selectionner une ligne ou de la créer le cas échéant. Prenons un exemple concret : un utilisateur veut créer une facture, il a le choix dans son formulaire basé sur sa requete de selectionner des produits (listbox produits) parmi ceux existant (et les champ prix et description se remplissent automatiquement) ou, si le produit n'existe pas, l'utilisateur rempli le nom (toujours la meme listbox produit), le prix et la description et le produit est créé dans la base. J'espere avoir été clair. Merci de vos éclaircissement sur la construction de cette requete. Damien |
|
|
00
|
|
|
#2 |
![]() ![]() ![]() Claude LELOUPChercheur de loisirs (ayant trouvé !) Inscription : novembre 2006 Messages : 5 238 ![]() |
Bonjour,
Pas clair, en tout cas pas assez en ce qui me concerne Pour aider, je te suggère de poster l'image des relations et celle de ton formulaire. Avec l'image du formulaire, un petit commentaire qui explique ce que tu voudrais. |
|
|
00
|
|
|
#3 |
|
Candidat au titre de Membre du Club
![]() Inscription : août 2006 Messages : 45 ![]() |
Ok, je saute la partie ou j'explique mes experimentations, c'est surement celle la qui n'est pas claire.
Voici ma requete, la construction des tables et la relation peuvent etre facilement déduites de la construction de la requete [IMG]C:\requete.jpg[/IMG] Voici mon formulaire : [IMG]C:\formulaire.jpg[/IMG] En remplissant "e", il va me chercher automatiquement les valeurs "a", "b" et "c" ("a" étant la "source" de "e") et enregistre à table 2 "e" (identique à "a"), "f" et "g". Cela me convient. Par contre, ce que je voudrais, c'est qu'en cas d'inexistance de "source" a, quand je rempli "e", je puisse en plus remplir "b" et "c" et ajouter à ma table1 "a" (venant de "e"), "b" et "c" et à table2 "e", "f" et "g". Est ce plus clair? |
|
|
00
|
|
|
#4 |
![]() ![]() ![]() Claude LELOUPChercheur de loisirs (ayant trouvé !) Inscription : novembre 2006 Messages : 5 238 ![]() |
Excuse-moi, je m'attendais à quelque chose de plus explicite.
Exemple des tables et des champs qui ont des noms qui veulent dire ce qu'il sont. Un formulaire où l'on voit les contrôles et comprendre directement ce que tu voudrais faire. |
|
|
00
|
|
|
#5 |
|
Candidat au titre de Membre du Club
![]() Inscription : août 2006 Messages : 45 ![]() |
Ok, cette fois je pense que mon exemple sera facilement compréhensible.
Le classique : commandes / Clients 1 client peut avoir plusieurs commandes 1 commande ne peut avoir qu'un seul client. Dans mon formulaire, je rentre : le nom de la commande, le prix, le nom du client et il retrouve, s'il existe, le prénom et l'adresse. S'il n'existe pas, je voudrais pouvoir entrer ces trois derniers champs (nom du client, prénom du client et adresse du client) à la main et qu'il les sauvegarde. Comment faire ma requete en conséquence? Merci Damien |
|
|
00
|
|
|
#6 |
![]() ![]() ![]() Claude LELOUPChercheur de loisirs (ayant trouvé !) Inscription : novembre 2006 Messages : 5 238 ![]() |
Ah voila une bonne question et la réponse ici :
http://access.developpez.com/faq/?page=zdl#AbsDsListe |
|
|
00
|
|
|
#7 |
|
Candidat au titre de Membre du Club
![]() Inscription : août 2006 Messages : 45 ![]() |
Merci beaucoup Claude !
Je pensais qu'il y avait une possibilité pour le faire directement mais cette méthode me convient malgré tout. Je rappelle aux futurs lecteurs de ce post qui auront le meme probleme que pour activer le notinlist d'une liste déroulante qu'il faut mettre la propriété "limiter à liste" à true. Si je ne veux pas utiliser le controle liste modifiable déroulante mais une textbox, je suppose qu'il faut utiliser les evenements avantMaj ou apresMaj et vérifier si l'entrée existe et sinon l'ajouter. Merci pour ton aide ! Je mets le post en résolu. |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com