|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Invité de passage
![]() Inscription : mai 2011 Messages : 12 ![]() |
Bonjour,
je suis en train d'essayer de réaliser une bdd de gestion de livraisons / impression de factures, mais j'avoue que je suis un peu perdu entre les liaisons des tables.. Si quelqu'un pouvait m'aider, et au pire me faire l'ébauche sous access, ce serait super ! En fait, je souhaite suivre les facturations pour plusieurs entreprises. Chaque entreprise possède un à plusieurs contacts. Chaque contact a au moins un ou plusieurs chantiers. Chaque chantier est composé de plusieurs commandes. Chaque commande est composée d'une à plusieurs livraisons. Chaque livraison est composée d'un à plusieurs produits. Un produit est spécifique à un chantier, mais peux avoir la même dénomination avec prix différent pour un autre chantier. Je souhaite créer les formulaires suivants : Ajout d'une entreprise Ajout d'un contact Ajout d'un chantier Ajout d'un produit Ajout d'une livraison (et donc facturation) Recherche de toutes les facturations pour une commande Recherche de toutes les facturations pour un chantier Recherche de toutes les facturations pour une entreprise Recherche d'une facturation par date, ou n° de facturation. Table Entreprise Nom entreprise Adresse Code Postal Ville Table Contact Civilité Nom Prénom Tel Fax Nom entreprise Table Chantier Nom chantier Ville Nom contact Table Commande N° Commande client N° Commande fournisseur Poids total Nom chantier Table Produit Nom chantier Type Ref Unité Longueur Largeur Epaisseur Poids Prix achat Prix vente Table Facture N° Facture Nom chantier Date Poids livraison Table Détail Livraison N° Facture Produit Qtés |
|
|
00
|
|
|
#2 |
|
Expert Confirmé
![]() Inscription : juillet 2007 Messages : 2 176 ![]() |
Bonjour Magic57,
Tout d'abord, ton analyse semble tenir la route, en terme de contraintes et d'entités. Par contre, il faut définir des clés primaires (identifiant unique) qui ne peuvent pas changer et établir les liaisons avec. Par exemple, tu ne dois pas lier Chantier à Commande par Nom chantier : en effet, le nom du chantier pourrait être modifié alors que des commandes sont en cours (nom pas clair, faute d'orthographe, etc...). Pour faire simple, crées un champ Id_xxxxx en "numérotatio auto", qui sera la clé primaire, avec xxxxx=nom de l'entité. Sinon, tes liens sont correctement établis et respectent les relations 1---∞ que tu décris. Juste une remarque : ta table Produit est, en fait, une table "détail de la commande". Il manque une "vrai" table Produit avec un Id_Produit qui va bien. Enfin, je ne connais pas VBA et ne pourrai donc pas t'aider pour le développement proprement dit. Pas de problème pour la partie conception pour arriver à une fenêtre "Relation" propre.
__________________
Dis-nous et à bientôt, Richard. ---------------------------------------------------------------------------------------------- . et permettent aux forumeurs de cibler leur recherche dans une discussion : n'hésitez pas à voter !
|
|
|
00
|
|
|
#3 |
|
Invité de passage
![]() Inscription : mai 2011 Messages : 12 ![]() |
Bonjour Richard 35,
merci pour ta réponse. Est-ce que la présentation présentée en PJ fonctionne du coup ?? |
|
|
00
|
|
|
#4 |
|
Expert Confirmé
![]() Inscription : juillet 2007 Messages : 2 176 ![]() |
Bonjour Magic57,
Pourquoi ne crées-tu pas tes relations dans Access ? ==> il ne faut pas de double flèche ; ==> il faut créer l'intégrité référentielle minimum pour obtenir 1---∞. La partie Commande / Détail commande n'est pas correcte. Il faudrait : Commande - Id_Commande (clé primaire, numéro auto) ... Détail Commande - Id_Detail (clé primaire, numéro auto) - Id_Commande ... et supprimer Id_Chantier qui est retrouvé dans Commande. Relation Commande 1---∞ Détail Commande, via Id_Commande.
__________________
Dis-nous et à bientôt, Richard. ---------------------------------------------------------------------------------------------- . et permettent aux forumeurs de cibler leur recherche dans une discussion : n'hésitez pas à voter !
|
|
|
00
|
|
|
#5 |
|
Invité de passage
![]() Inscription : mai 2011 Messages : 12 ![]() |
Voici la version "remodifiée" sous access.. On est mieux dans cette configuration ? Peux-tu m'aider pour la suite ? merci ! |
|
|
00
|
|
|
#6 | |
|
Expert Confirmé
![]() Inscription : juillet 2007 Messages : 2 176 ![]() |
Bonjour Magic57,
Voilà un MCD qu'il est bien !... Citation:
Je ne connais pas VBA, je ne pourrais donc pas t'aider dans la codification de tes programmes. Le but de ce forum n'étant pas de développer, de A à Z, une application entière, je te suggère d'avancer dans ton projet et de poster en cas de blocage ou de besoin de conseil. N'oublies pas les recherches sur le forum, la FAQ, les tutoriels et l'aide Access. En tout état de cause, tu as une bonne base de départ puisque ton MCD est correct, dans l'absolu ; à toi de voir s'il est correct en fonction du contexte "métier" (contraintes, etc...) que tu connais mieux que les membres du forum.
__________________
Dis-nous et à bientôt, Richard. ---------------------------------------------------------------------------------------------- . et permettent aux forumeurs de cibler leur recherche dans une discussion : n'hésitez pas à voter !
|
|
|
|
00
|
|
|
#7 |
|
Invité de passage
![]() Inscription : mai 2011 Messages : 12 ![]() |
OK, merci tout plein !
je me lance dans la suite ! |
|
|
00
|
|
|
#8 |
|
Expert Confirmé
![]() Inscription : juillet 2007 Messages : 2 176 ![]() |
... sans oublier d'apposer le flag "Résolu".
__________________
Dis-nous et à bientôt, Richard. ---------------------------------------------------------------------------------------------- . et permettent aux forumeurs de cibler leur recherche dans une discussion : n'hésitez pas à voter !
|
|
|
00
|
Copyright © 2000-2012 - www.developpez.com