|
Publicité ' | ||||||||||||||||||||||||
|
|
#1 |
|
Candidat au titre de Membre du Club
![]() |
Bonjour,
je suis un étudiant effectuant un stage en informatique en première année. J'effectue donc actuellement mon stage dans une entrepris vendeuse de matériel médical et ma tâche consiste à créer une base de donnée effectuant un suivi du produit. Plus clairement, notre société se charge de fournir du matériel médical à des hôpitaux provenant d'entreprises de différentes marques créant ces équipements. Une marque possède plusieurs produits, un personnel attitré ainsi que des informations diverses (adresse, pays,...). Pour pouvoir obtenir un produit d'une marque, il faut recevoir une "letter_of_appointment" ainsi qu'un papier attestant de l'accord du distributeur "distributor_agreement" valide pour une periode de x années. Le personnel en charge d'un marque est défini par un secteur d'activité (fincances,...) il y a donc plusieurs personnes qui se chargent des echanges avec une marque, du coté de cette meme marque, et du coté de notre entreprise. Chaque produit à un nom; qui peut donc être similaire à un autre produit si on le possède deux fois; subit des tests à l'usine, est soumis à des normes de qualités, et possède des documents liés (manuel d'utilisation,...) Pour recevoir un produit, il faut qu'il soit 'validé' auprès du ministère de la santé, de ministère des ventes, et de l'agence des produits radioactifs. On obtient alors une date de délivrance de la part de chaque ministère lui aussi valide pour x année, qu'il faut donc renouveler, 3 mois avant chaque fin de validité. Etant débutant en informatique et n'ayant qu'abordé les bases de données en cours, je me trouve un peu en difficulté à définir les tables, d'autant plus que je n'ai jamais utilisé Microsoft Access et que c'est sous ce logiciel que je dois développer la base de donnée. Mon principal problème se trouve au niveau des liaisons, des relations entre les tables, de ce fait je n'arrive pas à choisir les tables. Par exemple il me faudrait une table « PRINCIPAL », dans celle-ci j'aurais le champ name avec une clé primaire, Product (qui sera une autre table), personnel_in_charge (table ) address, postal_code, city, country, contact. J'ai donc ensuite la table « PRODUCT » et là commence ma difficulté, je ne vois pas que mettre en clé primaire, j'aimerais les organiser par nom, le problème étant qu'en tant que clé primaire, il sera unique, alors que plusieurs produits peuvent avoir le même nom... J'ai donc pensé à un numéro automatique. Mais je n'arrive pas bien à visualiser le résultat dans la base de donnée. Comment voir que tel produit correspond à telle marque si je ne mets pas cette marque dans la table... Mais alors il faudrait à chaque table remettre des informations des tables précédentes... Je ne m'exprime pas très clairement j'en suis désolé mais c'est parce que je suis moi-même un peu « embrouillé ». Autre exemple, dans chaque marque donc (PRINCIPAL) correspond un personnel qui s'occupe uniquement de celle-ci. Une table « PERSONNEL » m'a donc semblé utile. Cependant là encore j'ai un problème, il y a donc plusieurs personnes chargées d'une seule marque, j'ai donc les champs suivants : Principal_personnel_name, department, principal_personnel_contact, our_company_personnel_name . Je ne vois pas que mettre en clé primaire, et comment savoir que ce groupe de personne travaille pour cette marque et pas une autre, si je ne mets pas le principal_name en champ dans la table... je ne comprend pas bien comment mettre toutes les personnes en charge d'une meme marque "PRINCIPAL" dans un meme "groupe". Parce que dans personnel_in_charge j'aurais à mettre donc toutes les personnes s'occupant de toutes les marques. Comment donc savoir qui s'occupera de laquelle? Plus concrètement, pour la marque ELEKTA, X est associé aux departement finance, Y au documents, Z aux certificats de qualité, et l'équivalent s'occupe de la meme chose dans notre entrepris X' des finances mais de notre coté, Y des documents etc. dans ma table actuelle telle que je l'ai imaginé, 'Personnel_in_charge", j'ai les champs suivants: le nom de la personne qui s'occupe de la marque chez cette meme marque, son 'contact' (téléphone ou email), le departement auquel il est associé, et enfin le nom de la personne qui s'occupe de la marque mais chez "nous". Sachant donc que plusieurs personnes de plusieurs departements se chargent d'une meme marque. Mon second problème majeur se trouve au niveau de la "letter_of_appointment", "distributor_agreement" ainsi que des certificats attestant de la qualité du produit. Comme je l'ai dit précédemment ces trois types de documents ont se rapportent donc à un "PRINCIPAL", peuvent être "validés", "non-validés" ou "en cours de validation", et si validés, possèdent une date de délivrance et une date de validité. Ce que je n'arrive pas à comprendre c'est comment créer un lien entre par exemple l'appointment et la marque. Quel champ lier dans les tables ou quelles tables créer pour qu'a une marque corresponde une lettre d'appointment... Je ne sais pas si vous visualisez bien mes problèmes au vu de mes explications confuses mais je vous serais reconnaissant de m'aider. Je vous remercie par avance. |
|
|
00
|
|
|
#2 |
![]() ![]() ![]() Claude LELOUPChercheur de loisirs (ayant trouvé !) Inscription : novembre 2006 Messages : 5 242 ![]() |
Bonjour et bienvenue sur ce forum,
Ce que j’ai compris : Un produit est caractérisé par - des données signalétiques : nom, marque… ; - des particularités vis-à-vis du fournisseur : agrément, accord => date de validité ; - des contraintes légales : test, agrément auprès de ministères => date de validité ; - des particularités administratives : qui s’en occupe chez nous et avec quel correspondant. Ce que je ne vois pas encore : quelle est la finalité de l’application, quelles informations veut-on donner ? Dis-nous ce qui existe déjà (table Excel...) et de quelle version Access tu disposes. Je n'ai pas compris : Chaque produit à un nom, qui peut donc être similaire à un autre produit si on le possède deux fois. |
|
|
00
|
|
|
#3 |
|
Candidat au titre de Membre du Club
![]() |
Bonjour, et merci!
Oui tu as bien compris seulement certains agréments se rapportent à la marque et seulement à la marque. Par exemple la "letter_of_appointment" caractérise une marque entière et non pas produit par produit. Une seule lettre par marque. La finalité est de pouvoir suivre un produit avec toutes ses caractéristiques. Et d'envoyer une alerte sur outlook (si possible) 3 mois avant la fin d'une date de validité d'un document avec la checklist de tout ce qu'il faut rassembler ou renouveler pour que tout soit à jour. Pour la phrase que tu n'as pas compris je voulais dire qu'un nom de produit ne peux pas être une clé primaire, car il est possible qu'une marque possède deux fois le même produit, ou plus. Le nom de produit n'est donc pas unique. J'espère que j'ai éclairci tes incompréhensions. Et merci de t'intéresser à mon problème. |
|
|
00
|
|
|
#4 | ||
![]() ![]() ![]() Claude LELOUPChercheur de loisirs (ayant trouvé !) Inscription : novembre 2006 Messages : 5 242 ![]() |
Citation:
En d'autres mots, quelle est la distinction entre 2 produits "les mêmes" ? Donne un exemple concret. Citation:
Dis-nous ce qui existe déjà (table Excel...) et de quelle version Access tu disposes. |
||
|
|
00
|
|
|
#5 |
|
Candidat au titre de Membre du Club
![]() |
Il n'y à justement aucune différence entre deux produits à l'origine! C'est bien là mon problème! Par exemple deux accélérateur linéaire (c'est ce genre de machines, plutôt sur la radiothérapie etc...) La seule différence vient après avoir reçu les certificats ainsi que les agreements, quand tout est en règle le ministère de la santé donne un code "AKL" au produit. Mais pour moi ce code devait donc être répertorié dans la table Ministry_of_health et pas Products...
Hum un exemple concret, eh bien il faut que les tests usines aient étés réalisés, que les certificats de qualité soient obtenus, la lettre d'appointment reçue, pareil pour l'accord du distributeur, c'est tout me semble-t-il... Avec plusieurs certificats à avoir pour la qualité et le droit de vente. Désolé de ne pas avoir répondu à ta dernière question je l'ai sauté, il existe déjà plusieurs tableaux sur excel mais effectués presque à chaque fois à la "va vite" il n'y en à aucun de complet, il manque toujours des informations etc, si tu veux je peux t'envoyer une copie de ce que j'ai par email. Sinon j'ai les gens ici se servent surtout des documents papier, d'où la volonté du boss de faire une base de donnée. Pour ce qui est de la version d'Access je possède la 2010. Merci encore à toi de m'aider. |
|
|
00
|
|
|
#6 | ||||||
|
Expert Confirmé Sénior
![]() ![]() Fabien Enseignant Inscription : janvier 2009 Messages : 2 415 ![]() |
bonjour à vous deux,
Chez moi j’ai deux produits "ordinateur" de marque "Toshiba" Code :
Tout le problème est là, dans ma table [Produit] je gère deux exemplaires de produit de type "ordinateur". Pour lever l’ambigüité, je vais plutôt faire comme suit : Code :
Code :
Le problème d’Alialyn n’étant pas simple, une boîte de 100 devrait suffire (chacun
__________________
L'informatique fait son grand retour au lycée... |
||||||
|
00
|
|
|
#7 |
|
Candidat au titre de Membre du Club
![]() |
Bonjour f-leb et merci pour tes explications.
C'est un peu plus clair mais cependant je n'arrive pas bien à l'appliquer à mon cas. Il faudrait donc que je rajoute une numéro correspondant à un type de produit pour chaque produit si j'ai bien compris. Dans ton exemple ensuite tu as deux fois la même marque, ce qui est aussi le cas pour moi, plusieurs produits pour une seule marque, seulement j'ai une table entière dédiée à la marque car il y a beaucoup d'informations s'y rapportant. Comment lier donc un produit à une marque? Via quel champ? Faut il que je lie le type de produit (un numéro donc) au champ produit de la table de la marque? Je me demande si c'est mon problème qui n'est pas simple ou bien moi, qui n'arrive pas à lier mes tables, mais dans les 2 cas l'aspirine m'est indispensable! PS: Je suis désolé de ne pas vous répondre en soirée, ce qui est plus facile pour vous je comprends bien, mais j'effectue mon stage en Indonésie et il y a un décalage horaire de 5 heures, je dors donc souvent déjà quand vous répondez! |
|
|
00
|
|
|
#8 |
![]() ![]() ![]() Claude LELOUPChercheur de loisirs (ayant trouvé !) Inscription : novembre 2006 Messages : 5 242 ![]() |
Bonjour Fabien, bonsoir Alialyn,
Ce que je crois avoir compris du modèle. des Firmes avec : - des données signalétiques standard ; - des données relatives à des certificats réglementaires qui régissent notre relation avec cette firme (dates d’émission et de validité) ; - qui chez nous (par centre de responsabilité) est en contact avec son homologue dans la firme (nom et @mail). des Produits avec : - la firme qui le livre ; - le nom du produit ; - des données relatives à des certificats et tests propres au produit (dates d’émission et parfois de validité). À ce stade de réflexion, il me semble que 2 tables suffisent. Toutefois, s’il s’avère que - selon le produit - le nombre de certificats/tests diffère, alors on ajouterait 2 tables au modèle : - une signalétique des certificats/tests ; - une table (idProduit, idCertificat, et les données y relatives), c’est ici qu’on trouverait "AKL" du Ministry_of_health. Cordialement. |
|
|
00
|
|
|
#9 |
|
Candidat au titre de Membre du Club
![]() |
Bonjour,
Tu as en effet bien compris le modèle, mais je ne pense pas que deux tables seulement suffisent... D'après ce que j'ai appris il faut tout décomposer au maximum, les dates d'émission et de validités n'ont donc plus rapport avec la firme à proprement dite mais avec la lettre d'appointment par exemple ou les certificats, j'ai donc cru bon d'à chaque fois créer une nouvelle table pour chaque certificats. Aussi je ne vois pas comment intégrer le personnel en charge d'une firme dans la même table que celle de la firme sachant que les personnes peuvent travailler pour plusieurs firmes avec des homologues différents. Personnellement suivant mon schéma j'ai une 12aine de tables... Principal qui est liée avec Personnel, Free_sale_certificate, letter_of_appointment, distributor_agreement et product, et justement Product liée avec donc principal, puis iso_certificate, ce_certificate, iec_certificate, ministry_of_health, ministry_of_trade et enfin nuclear_energy_regulation_agency. Et je n'arrive pas à faire correspondre une relation 1 à 1 entre les certificats et les produits ou principal dans access... (J'ai juste essayé pour voir je sais qu'il ne faut pas mettre la charrue avant les bœufs... ) Je ne vois pas très bien comment tu veux faire... NB: As tu reçu mon schéma? Merci pour votre aide. |
|
|
00
|
|
|
#10 | |
![]() ![]() ![]() Claude LELOUPChercheur de loisirs (ayant trouvé !) Inscription : novembre 2006 Messages : 5 242 ![]() |
Citation:
Vois-tu une objection à le poster sur le forum ? Personnellement, je ne suis pas un spécialiste. Par contre, j'ai constaté qu'un virtuose du genre suivait ce fil. C'est en soi une bonne nouvelle pour toi ! |
|
|
|
00
|
|
|
#11 |
|
Candidat au titre de Membre du Club
![]() |
Non je ne vois aucun problème à le poster sur le forum.
Je mets la capture d'écran du schéma en pièce jointe. Ayant trouvé quelques unes de mes erreurs je l'ai modifié par rapport à la version que je t'ai envoyée. J'espère que tu dis vrai à propos du "virtuose"! |
|
|
00
|
|
|
#12 | |
![]() ![]() ![]() Claude LELOUPChercheur de loisirs (ayant trouvé !) Inscription : novembre 2006 Messages : 5 242 ![]() |
Citation:
|
|
|
|
00
|
|
|
#13 |
|
Expert Confirmé Sénior
![]() ![]() Fabien Enseignant Inscription : janvier 2009 Messages : 2 415 ![]() |
bibi va s'y coller avec les beaux schémas pendant que tout le monde dort
!bonne fin de sieste Claude bonne nuit Alyalin ![]() à + [EDIT] ils sont fait avec quoi les beaux schémas ? [/EDIT]
__________________
L'informatique fait son grand retour au lycée... |
|
00
|
|
|
#14 |
![]() ![]() ![]() Claude LELOUPChercheur de loisirs (ayant trouvé !) Inscription : novembre 2006 Messages : 5 242 ![]() |
C'est ça la rançon de la gloire, cher maître !
|
|
|
00
|
|
|
#15 |
|
Candidat au titre de Membre du Club
![]() |
Bonjour à vous!
En effet je dormais quand tu as répondu à mon message! ![]() J'espère que ces schémas pourront t'aider (et donc moi-même :p) Bonne fin de nuit! |
|
|
00
|
|
|
#16 |
![]() ![]() ![]() Claude LELOUPChercheur de loisirs (ayant trouvé !) Inscription : novembre 2006 Messages : 5 242 ![]() |
... et je ne faisais pas la sieste !
Bonne journée. |
|
|
00
|
|
|
#17 |
|
Expert Confirmé Sénior
![]() ![]() Fabien Enseignant Inscription : janvier 2009 Messages : 2 415 ![]() |
Bonjour à tous,
en avant pour la saison 1 : les relations "un à un"… il y en a beaucoup sur ton schéma. Par exemple sur la relation Product------MoH_Agreement : Un produit peut avoir l’agrément du ministère (sous-entendu que le ministère peut ne pas accorder son agrément, ou encore qu’il n’est pas accordé au moment où le produit est créé dans la base). Un agrément n’est évidemment associé qu’à un et un seul produit. Le "peut" est important et justifie la création de deux tables Product et MoH_Agreement en relation "Un à un" : Ainsi, seuls les produits identifiés par idProduct et qui sont agréés sont également présents dans MoH_Agreement. On peut faire le même raisonnement sur les autres relations "un à un". Si une marque peut avoir une "letter_of_appointment" (c.a.d qu’il existe un moment au cours de la vie de la base où il est cohérent qu’une marque puisse exister sans sa "letter_of_appointment") alors tu fais deux tables : Marque-1-------1-Letter_of-appointment Si au contraire une marque ne peut exister sans cette lettre (parce que la marque est créée dans ta base qu’à partir du moment où tu reçois cette lettre), dans ce cas il est tout à fait cohérent de fusionner les données de Product et Letter_of_agreement dans la même table Product. Tout dépend donc de tes règles de gestion, si tu connais les MCD à la mode Merise on pourrait écrire: Marque----0,1----appartenir---1,1-----Lettre (deux tables) Ou Marque---1,1---appartenir----1,1----Lettre (on peut fusionner dans une seule table) Voilà pour le moment, je tourne la saison 2 …
__________________
L'informatique fait son grand retour au lycée... |
|
10
|
|
|
#18 |
![]() ![]() ![]() Claude LELOUPChercheur de loisirs (ayant trouvé !) Inscription : novembre 2006 Messages : 5 242 ![]() |
Je t'avais dit, Alialyn : "garanti".
Fabien
|
|
|
00
|
|
|
#19 |
|
Expert Confirmé Sénior
![]() ![]() Fabien Enseignant Inscription : janvier 2009 Messages : 2 415 ![]() |
Je vois que les tables ISO_certificate, EC_certificate et IEC_Certificate ont la même structure (issue_date, valid_date et confirmed).
Tu peux associer tes produits avec une table CertificateCode en relation n-n: Certificate(#Product_id, #Certif_Code, Issue_Date, valid_Date, Confirmed,) CertificateCode(Certif_Code, Certif_Name) Avec Certif_Name=ISO, EC, IEC, … Un produit peut avoir plusieurs certificats parmi ISO, IEC, EC, … : Product-1--------∞-Certificate-∞-------1-CertificateCode Je m’occupe des personnels…
__________________
L'informatique fait son grand retour au lycée... |
|
00
|
|
|
#20 |
|
Expert Confirmé Sénior
![]() ![]() Fabien Enseignant Inscription : janvier 2009 Messages : 2 415 ![]() |
Bizarre, je séparerais bien ce qui relève des marques et ce qui relève des entreprises. Une entreprise ne pourrait-elle pas avoir plusieurs marques ??
Trademark*-∞------1-Company *euhh.. c’est comme ça qu’on dit en angliche ? [EDIT] il y a quoi dans le champ Personnel.Contact ? L'identifiant d'un autre membre du personnel ? Tiens ! Salut Claude! [/EDIT]
__________________
L'informatique fait son grand retour au lycée... |
|
00
|
Copyright © 2000-2012 - www.developpez.com