OVH Cloud OVH Cloud

Zones liées

3 réponses
Avatar
Christian de BXL
Bonjour,
Malgré des recherches dans les posts précédents,je ne trouve pas de réponse
à un problème.
Ceci est un exercice basé sur une BD pour vétérinaire.
Dans un formulaire FrmAnimal basé sur la table TAnimal,permettant d'encoder
les renseignements sur un animal,j'ai créé une zone déroulante ListeNumClient
avec trois colones: NumClient,NomClient et PrenomClient. C'est NumClient qui
s'affiche et qui est inscrit dans la table TAnimal.
Je voudrais qu'une deuxième zone déroulante m'affiche la deuxième colone de
ma zone déroulante ListeNumClient,càd le nom du client correspondant.
Je dois utiliser [Nom de la zone de liste].Column(1),mais cela ne fonctionne
pas.Rien ne s'affiche dans ma deuxième zone de liste.
Si mon instruction est la bonne,où dois-je l'introduire?Dans l'onglet
Propriété de ma deuxième zone de liste,dans Source contrôle,Origine Source ou
Contenu.
Si c'est possible,je voudrais aussi que cette valeur puisse être retenues
dans ma table TAnimal dans un champ prévu à cet effet.
La méthode est-elle la bonne,y en a-t-il une autre pour qu'un contrôle
affiche des données par rapport à un autre?
J'espère avoir été assez clair;
Christian

3 réponses

Avatar
Bonjour
pourquoi faire une liste déroulante pour le nom ?
je te conseille de créer une requête QrySaisieAnimal
dans cette requête, tu rajoutes le nom du client qui apparaît pour les numéros de client déjà existants grace à la relation entre ta
table
TAnimal et Tclient.
Ensuite, tu mets cette requête comme source du formulaire de saisie.
Tu rajoutes ta liste déroulante liée au champ NoClient
Tu rajoutes enfin une zone de texte liée au champ NomClient de ta requête.
Ce champ ne sera pas modifiable, donc autant lui appliquer la propriété verrouillé oui+activé non

a+

--
Arnaud
---------------------------------------------
infos, conseils et liens : http://www.mpfa.info
---------------------------------------------


"Christian de BXL" a écrit dans le message de news:

Bonjour,
Malgré des recherches dans les posts précédents,je ne trouve pas de réponse
à un problème.
Ceci est un exercice basé sur une BD pour vétérinaire.
Dans un formulaire FrmAnimal basé sur la table TAnimal,permettant d'encoder
les renseignements sur un animal,j'ai créé une zone déroulante ListeNumClient
avec trois colones: NumClient,NomClient et PrenomClient. C'est NumClient qui
s'affiche et qui est inscrit dans la table TAnimal.
Je voudrais qu'une deuxième zone déroulante m'affiche la deuxième colone de
ma zone déroulante ListeNumClient,càd le nom du client correspondant.
Je dois utiliser [Nom de la zone de liste].Column(1),mais cela ne fonctionne
pas.Rien ne s'affiche dans ma deuxième zone de liste.
Si mon instruction est la bonne,où dois-je l'introduire?Dans l'onglet
Propriété de ma deuxième zone de liste,dans Source contrôle,Origine Source ou
Contenu.
Si c'est possible,je voudrais aussi que cette valeur puisse être retenues
dans ma table TAnimal dans un champ prévu à cet effet.
La méthode est-elle la bonne,y en a-t-il une autre pour qu'un contrôle
affiche des données par rapport à un autre?
J'espère avoir été assez clair;
Christian





Avatar
Dan
"Christian de BXL" a écrit dans
le message de news:
Bonjour,
Malgré des recherches dans les posts précédents,je ne trouve pas de
réponse
à un problème.
Ceci est un exercice basé sur une BD pour vétérinaire.
Dans un formulaire FrmAnimal basé sur la table TAnimal,permettant
d'encoder
les renseignements sur un animal,j'ai créé une zone déroulante
ListeNumClient
avec trois colones: NumClient,NomClient et PrenomClient. C'est NumClient
qui
s'affiche et qui est inscrit dans la table TAnimal.
Je voudrais qu'une deuxième zone déroulante m'affiche la deuxième colone
de
ma zone déroulante ListeNumClient,càd le nom du client correspondant.
Je dois utiliser [Nom de la zone de liste].Column(1),mais cela ne
fonctionne
pas.Rien ne s'affiche dans ma deuxième zone de liste.
Si mon instruction est la bonne,où dois-je l'introduire?Dans l'onglet
Propriété de ma deuxième zone de liste,dans Source contrôle,Origine Source
ou
Contenu.
Si c'est possible,je voudrais aussi que cette valeur puisse être retenues
dans ma table TAnimal dans un champ prévu à cet effet.
La méthode est-elle la bonne,y en a-t-il une autre pour qu'un contrôle
affiche des données par rapport à un autre?
J'espère avoir été assez clair;
Christian


Salut Christian,


Ta méthode est bonne, elle demande juste à être ajustée...

Pour que le nom et le prénom du client apparaissent dans la liste déroulante
:
- dans la requête alimentant ta liste, basée sur la table Client, concatène
Nom_Client&" "&Prénom_Client dans une colonne Client, pour qu'ils ne fassent
qu'une seule colonne;
- NumClient est toujours la colonne liée, mais sa largeur est à zéro, tandis
que la colonne Client est à 8cm par exemple...

De cette manière, tu récupères bien le code du client dans ta table Animal,
mais c'est l'identité du client qui s'affiche...
Autre avantage, dans ta liste apparaissent tous les clients, même ceux qui
n'ont pas (ou plus, ou pas encore) d'animaux...

A+ Dan

Avatar
Christian de BXL
Merci Anor,
Cela fonctionne en faisant cette requête.
Merci à Dan pour ta réponse,mais je ne comprend pas.J'ai réussi à faire
afficher les autres colones de ma première zone liste déroulante en utilisant
[Nom de la zone de liste].Column(1), mais en créant une zone texte et non
déroulante.
Je ne crée pas de requête pour arriver à ce résultat.Je con et je catène où?
Merci à vous
Christian




"Christian de BXL" a écrit dans
le message de news:
Bonjour,
Malgré des recherches dans les posts précédents,je ne trouve pas de
réponse
à un problème.
Ceci est un exercice basé sur une BD pour vétérinaire.
Dans un formulaire FrmAnimal basé sur la table TAnimal,permettant
d'encoder
les renseignements sur un animal,j'ai créé une zone déroulante
ListeNumClient
avec trois colones: NumClient,NomClient et PrenomClient. C'est NumClient
qui
s'affiche et qui est inscrit dans la table TAnimal.
Je voudrais qu'une deuxième zone déroulante m'affiche la deuxième colone
de
ma zone déroulante ListeNumClient,càd le nom du client correspondant.
Je dois utiliser [Nom de la zone de liste].Column(1),mais cela ne
fonctionne
pas.Rien ne s'affiche dans ma deuxième zone de liste.
Si mon instruction est la bonne,où dois-je l'introduire?Dans l'onglet
Propriété de ma deuxième zone de liste,dans Source contrôle,Origine Source
ou
Contenu.
Si c'est possible,je voudrais aussi que cette valeur puisse être retenues
dans ma table TAnimal dans un champ prévu à cet effet.
La méthode est-elle la bonne,y en a-t-il une autre pour qu'un contrôle
affiche des données par rapport à un autre?
J'espère avoir été assez clair;
Christian


Salut Christian,


Ta méthode est bonne, elle demande juste à être ajustée...

Pour que le nom et le prénom du client apparaissent dans la liste déroulante
:
- dans la requête alimentant ta liste, basée sur la table Client, concatène
Nom_Client&" "&Prénom_Client dans une colonne Client, pour qu'ils ne fassent
qu'une seule colonne;
- NumClient est toujours la colonne liée, mais sa largeur est à zéro, tandis
que la colonne Client est à 8cm par exemple...

De cette manière, tu récupères bien le code du client dans ta table Animal,
mais c'est l'identité du client qui s'affiche...
Autre avantage, dans ta liste apparaissent tous les clients, même ceux qui
n'ont pas (ou plus, ou pas encore) d'animaux...

A+ Dan