IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Modélisation Discussion :

Aide à la création d'une base pour un laboratoire pour remplacer une base Excel (projet en cours)


Sujet :

Modélisation

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Septembre 2009
    Messages
    116
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2009
    Messages : 116
    Points : 31
    Points
    31
    Par défaut Aide à la création d'une base pour un laboratoire pour remplacer une base Excel (projet en cours)
    Bonjour à tous,

    Dans l’optique de transposer une « base de donnée » actuellement sous Excel à une BDD sous Access, je me pose quelques questions et je suis devant certains points que je ne peux résoudre tout seul.

    Information sur la base de données :

    Cette base permet de regrouper, trier et stocker toutes les données concernant les demandes d’analyses chimiques de mon service.
    Une demande d’analyse comporte un numéro unique (qui s’incrémente à chaque nouvelle demande), chaque demande peut avoir de 1 à X échantillons différents. Chaque échantillon d’une même demande subit le même type d’analyse (même éléments), mais d’une demande à l’autre les éléments ne sont pas forcément les même.

    Chaque échantillon est identifié par un repère donné par le demandeur et par repaire de mon laboratoire, ce dernier s’incrémente à chaque nouvel échantillon (C-0001, C-0002, etc…).

    Exemple :

    --------------------------------------------------------------------------
    N° de demande 1
    Nb d’échantillon 3
    Repère initial C-0001
    Repère final C-0003
    Eléments à analyser C, S, Mn, Al, Si
    --------------------------------------------------------------------------
    N° de demande 2
    Nb d’échantillon 1
    Repère initial C-0004
    Repère final C-0004
    Eléments à analyser C, S, O, N
    --------------------------------------------------------------------------

    Actuellement j’ai déjà commencé à créer la BDD. J’ai pour cela créé plusieurs tables.

    La première « t_demandes_listing », qui regroupe les informations concernant la demande :

    - N° de demande,
    - Demandeur
    - Nb d’échantillons
    - Eléments à analyser (case à cocher)

    La deuxième « t_echantillons_listing », qui regroupe les informations concernant les échantillons de la demande :

    - Repère demandeur
    - Repère laboratoire
    - Nuance
    - Code
    - Coulée

    Et une troisième « t_echantillons_analyse », qui regroupe les résultats des analyses pour les échantillons.

    Afin de mener à bien ce projet j'ai quelques questions et j'espère sincèrement que vous aurez des réponses pour moi

    Questions diverses (et variées...):

    1/. Est-il possible lorsque je créé une nouvelle demande avec la première table d'incrémenter dans la deuxième table les nouveaux échantillons (une ligne par échantillon avec le bon repère)? Si cela est possible comment peut-on faire?

    2/. Etant donné que pour une demande donnée les éléments sont les même pour tous les échantillons est-il possible de créer automatiquement (avec des cases à cocher) le même listing d'éléments pour chaque échantillons de la demande? Si oui comment?


    Pour le moment c'est tout pour les questions, je suis désolé d'avoir été aussi long, mais ce projet est assez important pour moi et je n'ai plus fait de base avec Access ou Excel depuis un bail et je suis perdu...

    En espérant que cela inspire quelqu'un, merci!

  2. #2
    Expert confirmé Avatar de Richard_35
    Homme Profil pro
    Inscrit en
    Juillet 2007
    Messages
    3 121
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations forums :
    Inscription : Juillet 2007
    Messages : 3 121
    Points : 4 596
    Points
    4 596
    Par défaut
    Bonjour Mandrake57,

    Avant d'attaquer le process (tes "questions diverses et variées"), il faut bétonner la base de données (liste des tables, relations).

    Plusieurs remarques :

    t_demandes_listing (demandes) :
    - N° de demande (numéro auto - clé primaire)
    - Demandeur
    - Nb d’échantillons
    ==> le nombre d'échantillon n'a pas besoin d'être stocké dans la table : nous avons cette information, en temps réel, via la table t_echantillons_listing. Il s'agit, si j'ai bien compris, d'un nombre à saisir pour générer automatiquement le nombre de ligne dans la table t_echantillons_listing.
    - Eléments à analyser (case à cocher)
    ==> si tu as beaucoup d'éléments fluctuants susceptibles d'être analysés, la gestion par "case à cocher" ne convient pas (à chaque nouvel élément tu devra ajouter un champ dans cette table). Il serait, peut-être, plus judicieux de créer une table des éléments (avec un identifiant) que tu lierais avec les demandes.

    t_echantillons_listing :
    - Repère laboratoire ("C" + numéro auto - clé primaire)
    - N° demande (pour liaison avec t_demandes_listing)
    - Repère demandeur
    - Nuance
    - Code
    - Coulée

    t_echantillons_analyse :
    - N° analyse (numéro auto - clé primaire)
    - Repère laboratoire (pour liaison avec t_echantillons_listing)
    - etc...

    Si j'ai bien compris.
    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 !

  3. #3
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Septembre 2009
    Messages
    116
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2009
    Messages : 116
    Points : 31
    Points
    31
    Par défaut
    Effectivement je n'ai pas assez détaillé mes tables...

    Elles sont effectivement construites sous la forme que tu présentes.

    Je suis ouvert à une autre solution que des cases à cocher pour la sélection des éléments à afficher en fonction de ceux qui doivent être analysés. Mais par contre je ne sais pas comment faire...

    Merci pour ton aide!

  4. #4
    Expert confirmé Avatar de Richard_35
    Homme Profil pro
    Inscrit en
    Juillet 2007
    Messages
    3 121
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations forums :
    Inscription : Juillet 2007
    Messages : 3 121
    Points : 4 596
    Points
    4 596
    Par défaut
    Donc, il faut, en plus :

    t_Elements (liste des éléments à analyser) :
    - Id_element (n° auto - clé primaire)
    - Code (C, S, Mn, etc...)
    - libellé (nom en clair de C, S, Mn, Mn...)

    t_Liaison_Demande_Element (liaison entre les demandes et les éléments concernés) :
    - Id_liaison (n° auto - clé primaire)
    - Id_demande
    - Id_element
    ==> index unique Id_demande/Id_element (un seul couple possible) ;
    ==> t_demandes_listing 1--->N t_Liaison_Demande_Element, via Id_demande ;
    ==> t_Elements 1--->N t_Liaison_Demande_Element, via Id_element.
    > Observation : cette table de liaison est nécessaire car 1 demande peut avoir plusieurs éléments à analyser et 1 éléments susceptible d'être analysé peut l'être dans plusieurs demandes.


    Concernant les tables déjà évoquées :

    t_demandes_listing (demandes) :
    - Id_demande (numéro auto - clé primaire)
    - Demandeur
    - etc...

    t_echantillons_listing :
    - Id_Repere_laboratoire ("C" + numéro auto - clé primaire)
    - Id_demande (pour liaison avec t_demandes_listing)
    - Repère demandeur
    - Nuance
    - Code
    - Coulée
    ==> t_demandes_listing 1--->N t_echantillons_listing, via Id_demande.

    t_echantillons_analyse :
    - N° analyse (numéro auto - clé primaire)
    - Id_Repere_laboratoire (pour liaison avec t_echantillons_listing)
    - etc...
    ==> t_echantillons_listing 1--->N t_echantillons_analyse, via Id_Repere_laboratoire.


    Attention, cette étape est primordiale.
    L'analyse présentée est-elle juste ?

    A ta disposition pour d'éventuelles précisions.
    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 !

  5. #5
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Septembre 2009
    Messages
    116
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2009
    Messages : 116
    Points : 31
    Points
    31
    Par défaut
    La table t_listing_elements existe déjà, je vais tester avec la table de liaisons.

    Je te tiens au courant dans la soirée (au cas où tu serais encore là!).

    Merci

  6. #6
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Septembre 2009
    Messages
    116
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2009
    Messages : 116
    Points : 31
    Points
    31
    Par défaut
    Peux-tu me rappeler les paramètres pour obtenir les liaisons 1->N comme tu me les présentes?

    En fait pour les deux premières liaisons (avec t_liaison_demandes_elements) j'obtiens des liaisons 1->1, alors que les autres c'est bon...

    Une fois les relations créées, as-tu une idée de comment continuer (je suis tellement rouillé qu'il me faut vraiment une aide pour cette partie, après je pense que pour le reste de la base je commencerais à m'en sortir un peu mieux...).

    Désolé pour toutes ces questions

  7. #7
    Expert confirmé Avatar de Richard_35
    Homme Profil pro
    Inscrit en
    Juillet 2007
    Messages
    3 121
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations forums :
    Inscription : Juillet 2007
    Messages : 3 121
    Points : 4 596
    Points
    4 596
    Par défaut
    Impossible !
    As-tu lié avec les bons champs ?

    Au besoin, fais une image écran de tes relations.
    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 !

  8. #8
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Septembre 2009
    Messages
    116
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2009
    Messages : 116
    Points : 31
    Points
    31
    Par défaut
    Voila le screen


  9. #9
    Expert confirmé Avatar de Richard_35
    Homme Profil pro
    Inscrit en
    Juillet 2007
    Messages
    3 121
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations forums :
    Inscription : Juillet 2007
    Messages : 3 121
    Points : 4 596
    Points
    4 596
    Par défaut
    Vérifies l'index unique Id_demande/Id_element de t_Liaison_Demande_Element ?
    Il faut les deux champs sous le même nom d'index.
    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 !

  10. #10
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Septembre 2009
    Messages
    116
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2009
    Messages : 116
    Points : 31
    Points
    31
    Par défaut
    Précise moi comment faire un index unique, je dois effectivement calé, j'ai pas du faire tout correctement...

  11. #11
    Expert confirmé Avatar de Richard_35
    Homme Profil pro
    Inscrit en
    Juillet 2007
    Messages
    3 121
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations forums :
    Inscription : Juillet 2007
    Messages : 3 121
    Points : 4 596
    Points
    4 596
    Par défaut
    Supprimes la relation, d'abord, et supprime l'index, ensuite. Ceci dans un premier temps : nous recréerons l'index plus tard plus tard.
    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 !

  12. #12
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Septembre 2009
    Messages
    116
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2009
    Messages : 116
    Points : 31
    Points
    31
    Par défaut
    J'ai supprimé les deux relations de la table liaison et j'ai supprmié les deux index N°Demande et IDElement

  13. #13
    Expert confirmé Avatar de Richard_35
    Homme Profil pro
    Inscrit en
    Juillet 2007
    Messages
    3 121
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations forums :
    Inscription : Juillet 2007
    Messages : 3 121
    Points : 4 596
    Points
    4 596
    Par défaut
    OK.
    Si tu recrées la relation entre t_demandes_listing et t_Liaison_Demande_Element en faisant glisser Id_demande de t_demandes_listing vers t_Liaison_Demande_Element, tu devrais voir "un à plusieurs".
    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 !

  14. #14
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Septembre 2009
    Messages
    116
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2009
    Messages : 116
    Points : 31
    Points
    31
    Par défaut
    non toujours 1 à 1...

    Edit; C'est bon il y avait une erreur dans la table....

  15. #15
    Expert confirmé Avatar de Richard_35
    Homme Profil pro
    Inscrit en
    Juillet 2007
    Messages
    3 121
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations forums :
    Inscription : Juillet 2007
    Messages : 3 121
    Points : 4 596
    Points
    4 596
    Par défaut
    Supprimes la table de liaison de la fenêtre Relations, sort en sauvegardant, ré-ouvres Relations, ajoutes la table liaison, refais la liaison.
    OK ?
    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 !

  16. #16
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Septembre 2009
    Messages
    116
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2009
    Messages : 116
    Points : 31
    Points
    31
    Par défaut
    Oui c'est bon.

    Que vois-tu à présent pour progresser par rapport aux questions du premier post?

  17. #17
    Expert confirmé Avatar de Richard_35
    Homme Profil pro
    Inscrit en
    Juillet 2007
    Messages
    3 121
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations forums :
    Inscription : Juillet 2007
    Messages : 3 121
    Points : 4 596
    Points
    4 596
    Par défaut
    Pour finir de bétonner la base, il faut créer l'index unique sur les deux champs :
    - table liaison en mode création ;
    - bouton index ;
    - donner un nom d'index ;
    - indiqier le nom du 1er champ ;
    - sur la ligne suivante, sans remplir le nom de l'index, indiquer le second champ.
    ==> sauvegarder.
    OK ?
    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 !

  18. #18
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Septembre 2009
    Messages
    116
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2009
    Messages : 116
    Points : 31
    Points
    31
    Par défaut
    Euh j'ai pas suivit, j'ai jamais fait cette manip (ou alors j'utilise pas les mêmes termes).

    Peux-tu préciser les champs que tu veux que j'indique (afin que je comprenne bien l'intérêt)?

  19. #19
    Expert confirmé Avatar de Richard_35
    Homme Profil pro
    Inscrit en
    Juillet 2007
    Messages
    3 121
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations forums :
    Inscription : Juillet 2007
    Messages : 3 121
    Points : 4 596
    Points
    4 596
    Par défaut
    Rappel :
    t_Liaison_Demande_Element (liaison entre les demandes et les éléments concernés) :
    - Id_liaison (n° auto - clé primaire)
    - Id_demande
    - Id_element
    ==> index unique Id_demande/Id_element (un seul couple possible) ;
    ==> t_demandes_listing 1--->N t_Liaison_Demande_Element, via Id_demande ;
    ==> t_Elements 1--->N t_Liaison_Demande_Element, via Id_element.
    > Observation : cette table de liaison est nécessaire car 1 demande peut avoir plusieurs éléments à analyser et 1 éléments susceptible d'être analysé peut l'être dans plusieurs demandes.
    1er champ : N°demande ;
    2ème champ : Id_element.
    OK ?
    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 !

  20. #20
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Septembre 2009
    Messages
    116
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2009
    Messages : 116
    Points : 31
    Points
    31
    Par défaut
    J'ai cliquer sur le bouton index (un éclair) dans le nom j'ai mis N°Demande/IDElement, dans le champ j'ai mis N°Demande et dans le champ juste en-dessous j'ai mis IDElement et j'ai mis oui pour unique et j'ai fermer la boîte de dialogue et sauvegarder.

    Est-ce cela que tu voulais que j'effectue, car après je vois pas où il apparaît et à quoi cela sert.

Discussions similaires

  1. Réponses: 2
    Dernier message: 23/11/2012, 16h20
  2. Réponses: 5
    Dernier message: 27/09/2009, 11h04
  3. Remplacer une colonne par ses numéros correspondants dans une liste
    Par freestyler dans le forum Shell et commandes GNU
    Réponses: 27
    Dernier message: 12/06/2008, 15h42
  4. Réponses: 4
    Dernier message: 17/02/2008, 12h42
  5. Remplacer une ligne d'un fichier texte par une autre
    Par devalender dans le forum WinDev
    Réponses: 12
    Dernier message: 24/07/2007, 19h51

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo