|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Invité régulier
![]() Inscription : août 2007 Messages : 26 ![]() |
Bonjour à tous,
je tourne en rond sur un problème et je ne trouve pas de solution. je possède 2 tables liées par une relation 1 à n : Tcommande et Tproduit Tproduit possède 4 champs : idProduit, nomProduit, prixProduit et descriptionProduit. Tcommande possède divers champs dont idProduit. En fait je veux obtenir le même résultat que dans la base exemple "Les Comptoirs", à savoir dans le formulaire commande il y a un sous-formulaire (en mode feuille de données) produit. Lorsque l'on clique sur le champ nomProduit dans le formulaire, il y a une liste déroulante qui prend ses valeurs de Tproduit.nomProduit De plus, lorsque l'on sélectionne un produit, les champs prix et description se remplisse automatiquement. J'ai fait mon formulaire avec l'assistant et j'ai réussi à transformer le champ nomProduit en liste déroulante récupérant les valeurs de Tproduit mais je ne parviens pas à propager la mise à jour sur les champs prix et description. Question subsidiaire, ce formulaire ne doit pas permettre de modifier ou d'ajouter des données dans Tproduit. Y-a-t-il une solution ? Merci d'avance pour votre aide :-) |
|
|
00
|
|
|
#2 |
![]() ![]() ![]() Claude LELOUPChercheur de loisirs (ayant trouvé !) Inscription : novembre 2006 Messages : 5 238 ![]() |
Bonjour,
Peux-tu poster un BDD compatible ACCESS2000 avec tes tables et formulaires pour que nous puissions dialoguer sur du concret ? |
|
|
00
|
|
|
#3 |
|
Invité régulier
![]() Inscription : août 2007 Messages : 26 ![]() |
Oui, bien-sur.
Merci pour votre aide. |
|
|
00
|
|
|
#4 |
![]() ![]() ![]() Claude LELOUPChercheur de loisirs (ayant trouvé !) Inscription : novembre 2006 Messages : 5 238 ![]() |
Peux-tu dire
1° ce que tu voudrais voir dans le formulaire frmCommandeOffreCommerciale lorsque tu l'ouvres 2° décrire l'action que tu voudrais faire |
|
|
00
|
|
|
#5 |
|
Invité régulier
![]() Inscription : août 2007 Messages : 26 ![]() |
Ce que je vois quand j'ouvre n'a pas vraiment d'importance, je conçois plus un formulaire comme une interface de saisie plutôt que pour visualiser les données.
Idéalement, il faudrait que ce soit l'enregistrement vierge qui suit le dernier enregistrement mais c'est vraiment optionnel. Lorsque j'ouvre le formulaire frmCommandeOffreCommerciale je remplis à la main la partie du formulaire principale (NomProjet...Observation) Dans le sous-formulaire sfrmOffreComerciale quand je clic sur le champ "OffreCommerciale" je choisis l'offre que je veux dans la liste déroulante (j'ai d'ailleurs un message d'erreur à ce niveau là) et je souhaite que le prix qui correspond à cette offre se mette automatiquement dans le champ prix (idem pour observation si il y en a une). Merci. |
|
|
00
|
|
|
#6 | |
![]() ![]() ![]() Claude LELOUPChercheur de loisirs (ayant trouvé !) Inscription : novembre 2006 Messages : 5 238 ![]() |
Citation:
seulement pour les voir ? |
|
|
|
00
|
|
|
#7 |
|
Invité régulier
![]() Inscription : août 2007 Messages : 26 ![]() |
C'est une bonne question
dans la table tblAcheterOffreCommerciale, vous pouvez constater qu'il y a un champ OffreChoisie. Dans ma conception initiale ce champ devait effectivement enregistrer l'offre choisie dans la liste déroulante. Pour être logique il faudrait pratiquer de même avec le prix (et donc créer un champ supplémentaire dans la table) mais je n'ai jamais réussi à faire cela. Si vous vous sentez la patience de m'expliquer comment y parvenir, je suis preneur mais dans le pire des cas je m'en passerais et je supprimerai le champ OffreChoisie inutile. Pour répondre simplement : dans le pire des cas, oui, juste pour voir ; dans le meilleur des cas, pour que l'offre choisie soit stockée dans le champ idoine. Merci infiniment de me consacrer de votre temps. |
|
|
00
|
|
|
#8 |
![]() ![]() ![]() Claude LELOUPChercheur de loisirs (ayant trouvé !) Inscription : novembre 2006 Messages : 5 238 ![]() |
Tu n'as pas besoin d'un sous-formulaire pour cela.
Vois l'exemple en annexe et intéresse-toi aux propriétés des 3 contrôles qui remplacent ton sous-formulaire. Si tu places ton curseur sur une propriété et que tu enfonces <F1>, l'aide d'Access s'ouvre à la bonne page. Reviens ensuite avec tes questions pour poursuivre la construction de ton projet Je dois m'absenter. Retour vers 20:00. |
|
|
00
|
|
|
#9 |
|
Invité régulier
![]() Inscription : août 2007 Messages : 26 ![]() |
Merci pour le tuyau de l'aide qui arrive à la bonne page
J'ai fait un sous-formulaire parce que je dois être capable d'acheter plusieurs offres commerciales. J'ai adapté les même propriétés aux contrôles Prix et Description dans mon sous-formulaire mais j'ai une erreur m'indiquant qu'il est impossible d'attribuer une valeur à cette objet et les champs Prix et description se remplissent avec "#Nom*?" |
|
|
00
|
|
|
#10 |
![]() ![]() ![]() Claude LELOUPChercheur de loisirs (ayant trouvé !) Inscription : novembre 2006 Messages : 5 238 ![]() |
Je veux bien t'aider, mais tu dois d'abord expliquer ce que tu veux faire.
Avec des mots et non avec des "solutions". Que veux-tu capter comme information ? Explique à quoi cela va servir. Ce qu'il faut vérifier... |
|
|
00
|
|
|
#11 |
|
Invité régulier
![]() Inscription : août 2007 Messages : 26 ![]() |
Ok, je vais essayé d'être clair.
Je suis un vendeur, je vends des prestations à des partenaires. Un partenaire peut acheter plusieurs prestations et une prestation peut-être achetée par plusieurs partenaires. J'ai donc 3 tables tblPartenaire, tblOffreCommerciale et la table de liaison tblAcheterOffreCommerciale. Les d'offre commerciale , leurs prix et descriptions sont fixes. Je les ai rentrés dans tblOffreCommerciale une fois pour toute et je n'y touche plus. En revanche, je veux enregistrer quelles offres je vends à mes partenaires (comme pour faire une facture). J'ai donc créer un formulaire principale sur la base de la table tblAcheterOffreCommerciale que je remplis avec des infos ayant un rapport avec les conditions d'achat et j'ajoute un sous-formulaire en mode feuille de données me permettant de choisir les offres achetées par le partenaire. Quand je choisis une offre, je veux que soit mise à jour (dans le formulaire pas dans la base) les champs prix et description. L'idéal serait que l'offre choisie soit enregistrée dans le champ OffreChoisie de la table tblAcheterOffreCommerciale. Dans le fichier fourni j'ai enlevé la partie partenaire qui n’interagit pas avec le reste. J'espère avoir été plus clair Merci encore. |
|
|
00
|
|
|
#12 |
![]() ![]() ![]() Claude LELOUPChercheur de loisirs (ayant trouvé !) Inscription : novembre 2006 Messages : 5 238 ![]() |
Vérifie si j’ai compris.
Pour ajouter une transaction avec un partenaire : tu ouvres le formulaire frmCommandeOffreCommerciale tous les champs sont vierges tu complètes tous les champs que tu as prévus dans la partie supérieure. tu choisis dans une liste déroulante une et une seule offre lorsque ton choix est fait, tu décides de mettre à jour la table tblAcheterOffreCommerciale, avec les données encodées + l’offre choisie. Pour déclencher la mise à jour, tu cliques sur un bouton. |
|
|
00
|
|
|
#13 |
|
Invité régulier
![]() Inscription : août 2007 Messages : 26 ![]() |
C'est presque ça : je peux choisir 1 ou plusieurs offres à partir de la liste déroulante.
|
|
|
00
|
|
|
#14 |
![]() ![]() ![]() Claude LELOUPChercheur de loisirs (ayant trouvé !) Inscription : novembre 2006 Messages : 5 238 ![]() |
Dans ta table, tu as prévu 1 champ
comment vois-tu les choses ? On crée 2 enregistrements ? |
|
|
00
|
|
|
#15 |
|
Invité régulier
![]() Inscription : août 2007 Messages : 26 ![]() |
Je savais bien qu'il y avait un truc qui m'échappait...
Mon problème c'est que je ne sais pas combien mes partenaires vont acheter d'offre... OK ça marche pour la création de 2 enregistrements; Vous êtes vraiment gentil, j'ai un peu la sensation de vous faire faire tout le travail Merci beaucoup. |
|
|
00
|
|
|
#16 |
![]() ![]() ![]() Claude LELOUPChercheur de loisirs (ayant trouvé !) Inscription : novembre 2006 Messages : 5 238 ![]() |
Peux-tu donner un peu de détail (exemples) sur les notions de :
NomProjet NouveauPartenariat NatureTransaction MontantEngage NatureEngagement Je ne vois pas de date |
|
|
00
|
|
|
#17 |
|
Invité régulier
![]() Inscription : août 2007 Messages : 26 ![]() |
Alors, par exemple on pourrait avoir :
NomProjet = Salon du livre 2011 NouveauPartenariat = oui ou non NatureTransaction = achat ou échange MontantEngager = 3000€ (il peut être différent du prix de la prestation en cas d'échange par exemple) NatureEngagement = verbal/ferme/contrat signé/etc. Il n'y a pas de date puisqu'a priori je vends des prestations à l'occasion d'évènements (salon, compétions sportives, etc.) dont la dénomination est datée. |
|
|
00
|
|
|
#18 |
|
Invité régulier
![]() Inscription : août 2007 Messages : 26 ![]() |
Peut-être qu'il serait plus simple de créer une table supplémentaire (liée à la table tblAcheterOffreCommerciale) appelée tblOffreCommercialeChoisie et qui stockerait les dénominations, prix et description de(s) offre(s) commerciales achetée(s) par le partenaire. L'origine des informations serait la table tblOffreCommerciale qui ne serait en relation avec aucune table...
Cela permet de régler le problème du nombre d'enregistrements. |
|
|
00
|
|
|
#19 |
![]() ![]() ![]() Claude LELOUPChercheur de loisirs (ayant trouvé !) Inscription : novembre 2006 Messages : 5 238 ![]() |
Vois un exemple en pièce jointe pour t'aider à démarrer.
Examine les propriétés de chaque contrôle (singulièrement les zones de liste) et le nom qu'il porte. Reviens si questions (utilise d'abord F1) et aide éventuelle pour la suite. Bonne journée. |
|
|
10
|
|
|
#20 |
|
Invité régulier
![]() Inscription : août 2007 Messages : 26 ![]() |
Merci infiniment.
Je vais décortiquer pour comprendre. Je reviens si j'ai des questions. Excellente journée |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com