Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Ajout de valeur dans un sous formulaire avec des tables liées

6 réponses
Avatar
Régis
Bonjour,

Dans une base j'ai une table client et une table commande.
Les commandes font r=E9f=E9rences =E0 un ID client.
J'ai formulaire qui contient une liste d=E9roulante avec=20
les clients et lorsque l'utilisateur choisit un client,=20
un sous formulaire s'affiche avec les commande concern=E9es.
Jusqu'=E0 pr=E9sent ce formulaire n'=E9tait utilis=E9 quand=20
lecture. J'aierais maintemant saisir directement dans le=20
sous formulaire des commandes, mais comment faire pour=20
r=E9cup=E9rer - et affecter - la valeur de l'id client pour=20
mettre =E0 jour la table commande ???

Je ne sais pas si j'ai =E9t=E9 clair.
Merci pour vos pistes

6 réponses

Avatar
Raymond [mvp]
Bonjour.

si ton sous-formulaire est bien fait (ce que je crois) tu n'as pas besoin de
te soucier de ce problème car c'est access qui s'en charge grâce aux champs
déclarés père-fils. place ton sous-formulaire en mode modification et ajout
et fais une saisie.

--
@+
Raymond Access MVP
http://access.seneque.free.fr/
http://access.vba.free.fr/
http://access2003.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum


"Régis" a écrit dans le message de
news:2242801c45cf4$430393a0$
Bonjour,

Dans une base j'ai une table client et une table commande.
Les commandes font références à un ID client.
J'ai formulaire qui contient une liste déroulante avec
les clients et lorsque l'utilisateur choisit un client,
un sous formulaire s'affiche avec les commande concernées.
Jusqu'à présent ce formulaire n'était utilisé quand
lecture. J'aierais maintemant saisir directement dans le
sous formulaire des commandes, mais comment faire pour
récupérer - et affecter - la valeur de l'id client pour
mettre à jour la table commande ???

Je ne sais pas si j'ai été clair.
Merci pour vos pistes
Avatar
Régis
Tout d'abord, merci de ta réponse Raymond.

Ensuite, je suis attristé de te décevoir, mais je pense
que j'ai travaillé comme un cochon (je maîtrise mieux le
Vb qu'Access) :
- j'ai déclaré comme source de données de mon formulaire
une requête faisant la jointure de mes deux tables.
- la liste déroulante est liée au formulaire
- sur l'événement afterupdate de la liste, je met à jour
la requête Querydefs(requete).SQl et je la redefinis
comme source du sous-formulaire (Me!
SousForm.Form.RecordSource = "requete")

De ce fait, rien n'est vraiment liée dynamiquement et
lorsque j'ajoute une valeur dans le sous formulaire, je
dois gérer manuellement les liens de mes ID.

Si tu peux m'aider pour avoir un formulaire propre, je
suis preneur et t'en serrait reconnaissant.

Merci de tes infos
Avatar
Raymond [mvp]
C'est au niveau des relations de tes tables qu'il y a un problème. Plutôt
qu'un long discours, télécharge la base exemple comptoir sur la page :
http://access.seneque.free.fr/bases_exemples.htm et regarde les relation
entre clients et commandes et ensuite le formulaire de saisie de commandes,
c'est exactement ton problème.

--
@+
Raymond Access MVP
http://access.seneque.free.fr/
http://access.vba.free.fr/
http://access2003.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum


"Régis" a écrit dans le message de
news:21dcb01c45d0d$a04ff850$
Tout d'abord, merci de ta réponse Raymond.

Ensuite, je suis attristé de te décevoir, mais je pense
que j'ai travaillé comme un cochon (je maîtrise mieux le
Vb qu'Access) :
- j'ai déclaré comme source de données de mon formulaire
une requête faisant la jointure de mes deux tables.
- la liste déroulante est liée au formulaire
- sur l'événement afterupdate de la liste, je met à jour
la requête Querydefs(requete).SQl et je la redefinis
comme source du sous-formulaire (Me!
SousForm.Form.RecordSource = "requete")

De ce fait, rien n'est vraiment liée dynamiquement et
lorsque j'ajoute une valeur dans le sous formulaire, je
dois gérer manuellement les liens de mes ID.

Si tu peux m'aider pour avoir un formulaire propre, je
suis preneur et t'en serrait reconnaissant.

Merci de tes infos
Avatar
Régis
Merci Raymond,

je vais étudier tout ça de près.
Avatar
Régis
Bonjour Raymond,

Je viens de voir la table comptoir.
Je n'arrive pas à voir comment, dans une table, on peut
avoir une liste déroulante qui reprend les infos de la
tables liées (par exemple dans la table commande les
codes clients ou les employés). Il me semble que si
j'arrive à faire ce lien mes problèmes de gestion seront
résolus (ajout de commande en choisissant le client
directement).

Merci d'avance pour ta réponse.

Régis
Avatar
Raymond [mvp]
Bonjour.

pas facile à expliquer.
crées une base vierge, importe tables, requêtes et formulaires concernant
les clients et les commandes. teste si ça fonctionne. tu fais un fichier zip
et tu me l'envoies par mail en enlevant le XYZ. dans mon adresse. je
regarderai ce que je peux faire pour t'aider.

--
@+
Raymond Access MVP
http://access.seneque.free.fr/
http://access.vba.free.fr/
http://access2003.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum


"Régis" a écrit dans le message de
news:2299301c45dbe$796ca830$
Bonjour Raymond,

Je viens de voir la table comptoir.
Je n'arrive pas à voir comment, dans une table, on peut
avoir une liste déroulante qui reprend les infos de la
tables liées (par exemple dans la table commande les
codes clients ou les employés). Il me semble que si
j'arrive à faire ce lien mes problèmes de gestion seront
résolus (ajout de commande en choisissant le client
directement).

Merci d'avance pour ta réponse.

Régis