cs_Jielde
Messages postés226Date d'inscriptionmardi 17 octobre 2000StatutMembreDernière intervention 1 décembre 2010
-
30 nov. 2010 à 21:25
cs_Jielde
Messages postés226Date d'inscriptionmardi 17 octobre 2000StatutMembreDernière intervention 1 décembre 2010
-
1 déc. 2010 à 23:04
Bonjour,
Voilà je suis en train de développé un logiciel de facturation pour me facilité la vie dans ma société.
J'ai pas contre un problème pour la stratégie à appliquer pour la création de ma base, je m'explique.
J'ai une form "Nouveau client" où je rentre les infos clients (normal vous direz) : "Nom, Prénom, ...".
Dans la form j'ai aussi un DataGridWiew pour les adresses de livraison.
Je souhaiterais entrer autant d'adresse de livraison (Adresse, Code Postal, Ville) que l'utilisateur souhaite.
Donc j'ai une Table SQL "Client" avec les champs : "Nom, Prenom, ..."
Mais comment je fais pour avoir autant d'adresse de livraison que je souhaite ? Créer une nouvelle table "Adresse_de_livraison" ? ou avez vous une astuce ?
Pouvez-vous m'aider car je galère un peut faut dire
cs_casy
Messages postés7741Date d'inscriptionmercredi 1 septembre 2004StatutMembreDernière intervention24 septembre 201440 30 nov. 2010 à 22:04
Et en poussant le bouchon plus loin, si on tient compte aussi de(s) l'adresse(s) de facturation.
Cas 1 :
Soit une seule adresse de facturation possible, dans ce cas il te faut
- une table client qui contiendra les informations du client. Elle peut aussi contenir l'adresse de facturation.
- une table Adresse qui contiendra les adresses de livraisons qui pourront être rattachées au client par un idclient (clé étrangère)
Cas 2 :
Soit plusieurs adresses de facturation possibles, dans ce cas le mieux étant
- une table client contenant uniquement des infos client
- une table adresse contenant uniquement des informations relatives à une adresse
et pour faire le lien
- une table d'association pour les adresses de facturations avec d'un coté une clé étrangère vers la table client, une autre vers la table adresse
- une table d'association pour les adresses de livraisons de même structure
Cas 2, Variante 1 :
Les 2 tables pouvant être une seule et même table, si tu peux différencier dedans les adresses de livraisons de celle de facturation.
Cas 2, Variante 2 :
Tu pourrais aussi te passer des tables d'associations, en faisant le lien directement le lien entre la table adresse et la table client à condition d'avoir la possibilité de différencier les adresses de livraisons et de facturations.
Si ta table Adresse doit(peut) servir à d'autres adresses que les 2 citées, ça sera le Cas n°2
Dans le cas contraire, si tu ne permet qu'une adresse de facturation, tu peux te contenter du Cas n°1, voire de la Variante 2 du Cas 2, éventuellement la Variante 1
Le cas n° 2 est plus propre et offre le plus de souplesse au niveau de l'utilisation de la table adresse mais complexifie le modèle métier. La variante 1 simplifie un peu en supprimant une table, la variante 2 en apporte un peu plus mais en contre-partie limite l'utilisation de la table adresse
A toi de choisir, mais au minimum il te faut la table client et la table adresse !!!
[i][b]---- Sevyc64 (alias Casy) ----
[hr]# LE PARTAGE EST NOTRE FORCE #/b/i
cs_Jielde
Messages postés226Date d'inscriptionmardi 17 octobre 2000StatutMembreDernière intervention 1 décembre 2010 30 nov. 2010 à 22:32
Merci pour vos réponses,
C'est bien se que je pensais mais j'étais pas sur de ma stratégie.
Par contre j'ai un problème, car dans les infos clients j'ai :
- Info client (Société, Nom, prénom, adresse, ...)
- Adresse(s) de livraison(s)
- Et le(s) contact(s) de ce clients
Donc encore une table pour les Contacts
Mais là où sa pèche, je dois donc d'abord enregistrer les infos clients pour avoir l'ID unique, ensuite je pourrais enregistrer les Adresses de livraisons et les Contacts.
J'ai raison ?
Si oui vous avez une astuce pour récupéré l'ID client au moment de l'enregistrement ou je lit la dernière ligne ?