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 06/05/2011, 15h33   #1
Invité de passage
 
Inscription : juin 2003
Messages : 28
Détails du profil
Informations forums :
Inscription : juin 2003
Messages : 28
Points : 2
Points : 2
Par défaut Aide table et relations

Bonjour

Je dois faire une base de donnée en access 2003 pour un suivi des services rendus au clients.

Chaque clients peut recevoir 2 types de service : Urgence et Normal
Chaque clients peut recevoir les 2 types de service ou juste 1
Chaque clients ne pourra jamais recevoir 2 fois le service Urgence ou Normal.

Donc j'ai fait 3 tables , tableclients ensuite tabletypeservice et tablesuivi

Je ne sais pas comment faire mes relations en sachant que jamais un client ne pourra recevoir 2 fois le même type de service.

Pour l'instant j'ai fait mes relations de tableclients à tabletypeservice et ensuite de tabletypeservice à tablesuivi mais ca ne fonctionne pas car comme ca un client peut recevoir plusieurs fois le type service exemple Urgence.

J'ai pensé à une clé composée mais je ne sais pas ou et dans quel table faire cette clé.

Si vous avez une idée ca m'aiderait beaucoup.

Merci
PokPok est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/05/2011, 16h58   #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 PokPok,

Donc, tu as créé les tables suivantes :

tableclients
- Id_Client (clé primaire)
- Nom
...

tabletypeservice
- Id_TypeService (clé primaire)
- Nom
...

Relations (non-Access)
tableclients---(0,2)---[peut recevoir]---(0,n)---tabletypeservice ;
==> d'où la nécessité d'une table de liaison pour gérer le 2/n.

tableLiaison
- Id_Client (clé primaire)
- Id_TypeService (clé primaire)
...

Relations (Access)
tableclients 1---∞ tableLiaison, via Id_Client ;
tabletypeservice 1---∞ tableLiaison, via Id_TypeService.


*** 1 ***
Citation:
Envoyé par PokPok
Je ne sais pas comment faire mes relations en sachant que jamais un client ne pourra recevoir 2 fois le même type de service.
==> c'est la clé primaire (composée) de tableLiaison qui s'en charge.
*** 1 ***

*** 2 ***
Citation:
Envoyé par PokPok
Chaque clients peut recevoir 2 types de service : Urgence et Normal
==> Access ne sait pas gérer le maximum de 2 dans les relations mais, s'il n'y a QUE deux types de services, alors ce souci est également résolu par le point 1.
*** 2 ***
__________________
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 06/05/2011, 18h01   #3
Invité de passage
 
Inscription : juin 2003
Messages : 28
Détails du profil
Informations forums :
Inscription : juin 2003
Messages : 28
Points : 2
Points : 2
Merci Richard

Génial !!!! Oui effectivement ca fonctionne très bien , donc maintenant si j'essaie de suivre votre coté logique pour ma table suivi

table suivi
NoAutoSuivi (Clé primaire)
Daterecu
Datedébuttravaux
........

Je relie ma table liaison à ma table suivi

Donc avec les tables reliées de cette facon il sera possible si je comprends bien de faire un formulaire avec 2 Sous-Formulaires c'est à dire formulaire client avec ses 2 sous formulaire ? en basant ma requete sur la table liaison

Sous-formulaire : Urgence suivi
Sous-Formulaire2 : Général suivi

Merci
PokPok est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/05/2011, 22h15   #4
Invité de passage
 
Inscription : juin 2003
Messages : 28
Détails du profil
Informations forums :
Inscription : juin 2003
Messages : 28
Points : 2
Points : 2
Bonjour à nouveau !

Malheureusement je suis bloqué, j'ai ma table de liaison ca fonctionne et la j'essaie de faire ma table suivi et je n'y arrive pas du tout.

Comment faire ma relation entre ma table suivi et ma table liaison.

Merci
PokPok est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 07/05/2011, 07h46   #5
Invité de passage
 
Inscription : juin 2003
Messages : 28
Détails du profil
Informations forums :
Inscription : juin 2003
Messages : 28
Points : 2
Points : 2
Bonjour

Je joins ma base avec les tables que j'ai besoin.

Donc résumé

1 client ne peut avoir 2 fois le même service c'est pour cette raison que j'ai la table liaison

Pour chaque service il y a un log des appels fait c'est pour cette raison que j'ai la table call

Pour chaque service il y a des factures donc c'est pour cette raison que j'ai la table facture

Mais je n'arrive pas à relié ma table liaison avec ma table call et aussi avec ma table facture.

De ma compréhension je crois que je dois pour les 2 tables restantes faire 3 clés primaires mais sans succès

Merci pour vos idées et surtout vos explications.
Fichiers attachés
Type de fichier : zip bd1.zip (55,7 Ko, 1 affichages)
PokPok est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 07/05/2011, 11h59   #6
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 PokPok,

Citation:
Envoyé par PokPok
Pour chaque service il y a un log des appels fait c'est pour cette raison que j'ai la table call
==> Call
- Id_Call (clé primaire)
- Id_Client
- Id_TypeService
- Date_Call
...

Citation:
Envoyé par PokPok
Pour chaque service il y a des factures donc c'est pour cette raison que j'ai la table facture
==> Facture
- Id_Facture (clé primaire)
- Id_Client
- Id_TypeService
- Date_Facture
...

Relations
tableLiaison 1---∞ Call, via Id_Client/Id_TypeService ;
tableLiaison 1---∞ Facture, via Id_Client/Id_TypeService.

Cela devrait rouler.
__________________
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 07/05/2011, 18h16   #7
Invité de passage
 
Inscription : juin 2003
Messages : 28
Détails du profil
Informations forums :
Inscription : juin 2003
Messages : 28
Points : 2
Points : 2
Bonjour

Encore un gros merci pour votre réponse...maintenant oui effectivement les tables ca fonctionne très bien si j'entre des données en mode table.

Je joins ma base qui se nomme Formstest à l'intérieur j'ai fait un formulaire basé sur ma table client. Est-ce possible d'avoir votre opinion si ce que je veut arriver à faire est réalisable avec la structure des tables ou si je suis mieux de tout recommencer.

Donc dans le formulaire client j'ai 2 cases à cocher , lorsque je coche les cases j'aimerais que dans mon formulaire liaison un nouvel enregistrement soit créer exemple

Client 1 case à cocher Urgence que lorsque j'ouvre le formulaire Urgence qui selon moi devrait être basé sur ma table liaison l'enregistrement s'y trouve déjà.

Meme chose pour la case à cocher Batiment.

J'ai esseyé de faire des multiples requête et j'ai basé mes formulaires sur ses requête mais avec aucun succès.

Merci encore
Fichiers attachés
Type de fichier : zip FormTest.zip (16,6 Ko, 0 affichages)
PokPok est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/05/2011, 10h32   #8
Invité de passage
 
Inscription : juin 2003
Messages : 28
Détails du profil
Informations forums :
Inscription : juin 2003
Messages : 28
Points : 2
Points : 2
Bonjour

J'ai finalement résolu ma dernière question....Merci encore pour l'aide qui m'as sauvé des heures .
PokPok 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 09h12.


 
 
 
 
Partenaires

Hébergement Web