|
Sujet n°202 |
ALIMENTER UN FORMULAIRE PAR REQUETE
par IFRANE
le 27/10/2008 : 00:25 |
bonjour
j'ai une table T1 relié à un formulaire FORM1
et une requete req basé sur une autre table dite auxiliaire
contenant les champs suivante:
identifiant,raison sociale,ville
la table T1contient les memes champs mais elle a d'autres champs variables comme montant,numero,etc
question:
comment en cliquant par exmple sur un bouton
une boite de dialogue vous invite à saisir le parametre
qui est identifiant et le formulaire sera rempli d'une maniere
automatique bien sur à concurrence des champs fixe que contient la table auxiliaire , et bien sur l'utilisateur devra
completer la saisie du formulaire en y ajoutant les autres champs dits variables.
Tout cela afin de faciliter la saisie à l'utilisateur;
rappel :
configuration utilisée
win xp prof +office 2003
mes remerciements
driss de casablanca
|
Réponse n° 1 |
par 3Stone le 27/10/2008 : 18:23 |
Bonjour,
On devine assez mal la situation et ce que tu souhaites obtenir...
La première question qui me vient est: pourquoi deux tables avec les mêmes champs ? et pourquoi créer ses doublons ?
Je pense plutôt que tu devrais voir comment normaliser tes données, quelles sont les tables dont tu as réellement besoin, et comment mettre cela en relation.
Après avoir fait cela, il suffirait d'introduire un champ clé externe dans ta table T1. Clé qui recevrait l'identifiant (clé primaire) de l'autre table.
Cordialement, Pierre(3stone)
|
Réponse n° 2 |
par DRISS le 27/10/2008 : 21:51 |
Bonsoir 3stone je vous remercie d'avoir pris l'initiative de me répondre, je vous explique pourquoi il y'a deux tables: la 1 ere est lié au formulaire la seconde est une table auxiliaire qui alimente la 1ere. Quant à la question pourquoi les memes champts: une table qui alimente une autre doit avoir forcement les memes champs. quant à la question de la clé primaire c'est une solution qui nécessite l'insertion dans le formulaire de la table auxiliaire comme sous formulaire. N'exite t il pas une autres solutions??? Cordialement driss |
Réponse n° 3 |
par 3Stone le 28/10/2008 : 13:48 |
Bonjour,
Dixit...la 1 ere est lié au formulaire
On dit qu'elle est source du formulaire, mais elle n'est pas "liée" à ce formulaire. Une table peut être la source de plusieurs formulaires, sous-formulaires ou de listes...
Dixit...la seconde est une table auxiliaire qui alimente la 1ere.
Dixit...Quant à la question pourquoi les memes champts:
Dixit...une table qui alimente une autre doit avoir forcement les memes champs.
Cela crée à chaque fois des doublons - ce qui est (généralement) contraire aux principes même de la base de données relationnelle...
Dixit...quant à la question de la clé primaire c'est une solution
Dixit...qui nécessite l'insertion dans le formulaire de la table auxiliaire comme sous formulaire.
Absolument pas Une simple liste déroulante, basée sur cette "table auxiliaire" et donc la clé primaire sera sauver dans la table qui est source du formulaire. Crées cette liste avec l'assistant et tu observe les proposition qui te sont faitent... la solution est là. Cordialement, Pierre(3stone)
|
Réponse n° 4 |
par IFRANE le 28/10/2008 : 21:35 |
BONJOUR, Mr je vous remercie de l'interet que vous portez à ma question . Cependant je tiens à vous préciser que j'ai fait comme tu m'a demadé : 1_ Dans la table source j'ai ajouter un champ que j'ai appelé NUMERO qui est clé primaire. 2_ Dans le formulaire j'ai inséré une liste déroulante liée àla table source qui va alimenter le formulaire. j'ai fait le test pas de réponse. POUVEZ VOUS M'ENVOYER UN EXMPLE CA SERA GENTIL DE VOTRE PART; EN TOUT CAS MERCI birgachdriss@hotmail.com DRISS
|
Réponse n° 5 |
par 3Stone le 29/10/2008 : 17:14 |
Bonjour,
On recommence...
La table "auxiliaire" qui contient déjà les données, on l'appellera table "A". L'autre table sera la "B".
Maintenant, tu crées un formulaire basé sur la table B. Ensuite, tu crées dans ce formulaire une liste déroulante avec l'assistant. Dans cette liste, tu sélectionnes les champs qui vont bien ET la clé primaire qui sera en première possition dans la liste (elle sera cachée...)
Dans la table B, il faut aussi prévoire un champ "numérique long" qui sera la clé externe - ce champ recevra la valeur de la clé primaire de l'enregistrement que tu aurras sélectionné grâce à la liste.
Lorsque tu crées cette liste, après la sélection de la table "A" comme source et la sélection des champs, ainsi que du tri... Access te demande :
- Mémoriser la valeur pour un usage ultérieur
- Stocker la valeur dans ce champ [Liste des champs]
Tu choisis la seconde, et dans la liste (les champs de la table B), tu choisis celui qui va "mémoriser" ton choix.
Cordialement, Pierre(3stone)
|
[ Retour à la liste des sujets ]
| Recherche
Préférences
1 membre
Connectés :
( personne )
|