Précédent   Forum des professionnels en informatique > Logiciels > Microsoft Office > Access > Modélisation
Modélisation Le forum qui vous aide à résoudre vos questions relatives à la modélisation (tables et relations) de votre base de données sous Access. Pour les états et les formulaires, postez dans le forum IHM.
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 12/12/2010, 16h36   #1
Invité régulier
 
CHRISTIAN WOUTERS
Inscription : septembre 2010
Messages : 30
Détails du profil
Informations personnelles :
Nom : CHRISTIAN WOUTERS

Informations forums :
Inscription : septembre 2010
Messages : 30
Points : 7
Points : 7
Par défaut Gerer un carnet de contacts

Bonjour,

dans une base de données, je gère des relations avec des 'clients' et des 'fournisseurs'. Je souhaite mettre tous ces contacts dans une seule table de 'Contacts'.
Au niveau de la gestion des relations, j'associe chaque article à la fois à un client et à un fournisseur. Ces deux relations (un-plusieurs) pointent toutes les deux vers la même table Contact: un 'IdContactClient' et un 'IdContactFournisseur' pointent pour chaque article vers la clé primaire de ma table Contact = IdContact.

Et là, j'ai un soucis quand, dans une requête, je souhaite avoir le détail (adresse etc.. ) d'un contact car je ne fais pas la distinction dans la table de contact entre les clients et les fournisseurs.

Pouvez-vous svp me dire comment résoudre proprement ce type de problème.

D'avance merci
ChChatou est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 12/12/2010, 18h14   #2
Expert Confirmé
 
Avatar de Richard_35
 
Homme
Inscription : juillet 2007
Messages : 2 176
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France, Ille et Vilaine (Bretagne)

Informations forums :
Inscription : juillet 2007
Messages : 2 176
Points : 2 805
Points : 2 805
Bonjour ChChatou,

Je ne suis pas sûr d'avoir bien compris. Tes tables sont-elles (à peu près) les suivantes :

Table CONTACTS (fusion de CLIENTS et FOURNISSEURS) :
- Id_contact (clé primaire)
- nom_contact
...

Table ARTICLES :
- Id_article (clé primaire)
- nom_article
- IdContactClient
- IdContactFournisseur
...

Relations :
CONTACTS 1----n ARTICLES, via Id_contact = IdContactClient ;
CONTACTS 1----n ARTICLES, via Id_contact = IdContactFournisseur.

Est-bien cela ?
__________________
Dis-nous et à bientôt,
Richard.
----------------------------------------------------------------------------------------------
En cas de résolution, et afin de faciliter la tâche des bénévoles, merci de cliquer sur .
et permettent aux forumeurs de cibler leur recherche dans une discussion : n'hésitez pas à voter !
Richard_35 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 12/12/2010, 19h05   #3
Invité régulier
 
CHRISTIAN WOUTERS
Inscription : septembre 2010
Messages : 30
Détails du profil
Informations personnelles :
Nom : CHRISTIAN WOUTERS

Informations forums :
Inscription : septembre 2010
Messages : 30
Points : 7
Points : 7
Oui, c'est bien cela. Mon problème est qu'une même personne peut, suivant l'article, être client ou fournisseur. Je ne peux pas résoudre mon problème en attribuant un rôle à chaque contact.

Merci
ChChatou est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 12/12/2010, 20h59   #4
Expert Confirmé
 
Avatar de Richard_35
 
Homme
Inscription : juillet 2007
Messages : 2 176
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France, Ille et Vilaine (Bretagne)

Informations forums :
Inscription : juillet 2007
Messages : 2 176
Points : 2 805
Points : 2 805
Je ne comprends pas où est ton problème, donc.

Dans ta requête, via l'assistant :
  • tu ajoutes la table ARTICLES ;
  • tu ajoutes la table CONTACTS ;
  • tu ajoutes, une nouvelle fois, la table CONTACTS (Access la nomera CONTACTS_1) ;
  • tu lies ARTICLES à CONTACTS, via IdContactClient ;
  • tu lies ARTICLES à CONTACTS_1, via IdContactFournisseur ;
  • tu sélectionnes les champs que tu veux dans CONTACTS en les préfixant "CLT_", par exemple ;
  • tu sélectionnes les champs que tu veux dans CONTACTS_1 en les préfixant "FRN_", par exemple.
==> tu pourras, ainsi, reconnaître les champs des clients et ceux des fournisseurs.

Je réponds à ta question "brute" en supposant que tu as décidé que les contacts multi-origines était la bonne solution.
__________________
Dis-nous et à bientôt,
Richard.
----------------------------------------------------------------------------------------------
En cas de résolution, et afin de faciliter la tâche des bénévoles, merci de cliquer sur .
et permettent aux forumeurs de cibler leur recherche dans une discussion : n'hésitez pas à voter !
Richard_35 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 13/12/2010, 04h28   #5
Invité régulier
 
CHRISTIAN WOUTERS
Inscription : septembre 2010
Messages : 30
Détails du profil
Informations personnelles :
Nom : CHRISTIAN WOUTERS

Informations forums :
Inscription : septembre 2010
Messages : 30
Points : 7
Points : 7
bonjour,

ça marche:
1/ j'ai supprimé les relations entre la table article et la table contact dans la requête.
2/ j'ai ajouté une deuxième fois la table Contact => Contact_1
3/ j'ai redéfini les relations et les jointures.
De ce fait, il n'y a plus de confusion entre les noms des clients et des fournisseurs dans la requête

Merci
ChChatou est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 23h18.


 
 
 
 
Partenaires

Hébergement Web