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

  1. #1
    Nouveau Candidat au Club
    Base de données pour gestion des formations des employés d'une entreprise
    Salut,
    je suis nouvelle dans ce site suis tombee sur ce forum en fesant mes recherche.

    Je travaille sur un projet presque sembable a celui ci et je suis toute nouvelle sur le domaine . Les questions traitees ici ont pu m'aider un peu.

    j'ai premierement ecrite certaines regles de gestion que vous trouverez ci desous:

    - Un employé est affecté à au moins un Departement.
    - Au moins un employé est affecté à chaque Departement.

    - Un employé subit au moins une formation.
    - Chaque formation est subit par au moins 1 employé.

    - Au moins une formation est dispensée dans un département.
    - Une formation est dispensée dans au moins un département.

    - Une formation peut être dispensée par un formateur.
    - Un formateur dispense au moins une formation.

    - Une formation se déroule sur au moins 1 session (il y a des formations qui n'ont pas besoin d'être répétés).
    - Au cours d'une session, au moins une formation est dispensée (plusieurs formations peuvent etre dispensees au cour d'une annee mais a des dates differentes.
    - Un cours de formation peut comporter un controle d'efficacité (les formation avec controle d'efficacité doivent être spécifiés).
    - Chaque controle d'efficacité est affecté à une formation.

    - Un document de formation est affecté à une formation.
    - Une formation est affectée à un document de formation.
    (Le chemin des documents de formation et des controles d'efficacites doivent être enregistré dans la base de données.)

    Ensuite j'ai pu ressortir les Tableaux suivant:

    Employes(PersonalID, Nom, Prenom)

    Departement(DepID, NomDep)

    Formation(FormID, NomForm, Duree, commentaire )

    Session(SessionID, FormID, Date, heure)

    Formateur(FormateurID, Nom, Prenom)

    Participer(EmpID, SessionID,...)

    DocumentFormation(DocumentID, FormID, NomFichier, CheminFichier,...)

    ControleEfficacite(ControlID, FormID, nom..)

    bref voila ce que jai pu avoir..je suis a cours d'idee... je ne sais deja pas si je suis dans la bonne voie... quelqu'un peut il m'aider svp...je veux d'abord avoir un bon modl pour pouvoir continuer...merci d'avance

  2. #2
    Membre émérite
    Bonjour,

    A première vue, cela a l'air d'être convenable.

    Evitez cependant d'utiliser comme nom de champ 'Nom' et 'Date' car cela peut conduire à des confusions avec les propriétés ayant ces mêmes noms. Ainsi pour la table Employes, il est à mon avis préférable d'avoir les champs nommés EmpID, EmpNom, EmpPrenom.

    Bonne continuation.

  3. #3
    Responsable Arduino et Systèmes Embarqués

    Bonsoir,

    Il reste pas mal de choses à affiner...

    Par exemple, est-ce qu'un employé s'inscrit à une formation, ou à une session ?

    Est-ce que le formateur qui dispense une formation sera le formateur pour toutes les sessions de cette formation ?

    N'aurais-tu pas un début de schéma à proposer (diagramme entité-association, MCD ou autre) ?

  4. #4
    Nouveau Candidat au Club
    Salut,

    je m'excuse de n'avoir pas repondu plutot...j'essayais d'abord de faire mon model pour vous le presenter. j'ai pu avoir le model ci-dessous:



  5. #5
    Nouveau Candidat au Club
    1. Au fait j'ai du eliminer la table Session . Les formations seront faite durant l'annee a des dates differente et pas vraiment connu a l'avance. Il y'a des formations qui pouront etre reproduit avec un certains temps. J'ai donc juste ajoute la date de formation dans ma table Formation

    2. J'ai beaucoup reflechit sur comment joindre les tables Document , Formation et Controle ...je ne sais pas si c'est reussi
    . une formation peut avoir un control a la fin comme elle peut ne pas avoir
    . une formation peut avoir un ou deux( deux y compris le document de controle si cette formation necessite un control a la fin ) documents.

    3. Toute les formations ne sont pas dirrigees par un formateur ..il y'a des formations ou l'employe recoit juste des documents a lire et ....

    4. je ne sais pas trop comment lier la table Employes et Participer...la table participe de qui a participer a quelle formation

    NB: Il ne s'agit pas d'une entreprise de formation...genre elle fait dans la formation des employes ..non.
    c'est une entreprise specialisee a autre chose mais comme dans toute entreprise il faut bien soumettre les employes de l'entreprise a certaines formations en rapport aux instructions de traitement, aux
    directives de travail..etc........c'est de ce genre de formation qu'il s'agit ici. Desole pour la longueur du message je me suis dis que ca peut aider pour mieux comprendre... Merci d'avance pour votre aide

  6. #6
    Responsable Arduino et Systèmes Embarqués

    Bonsoir Dotie,

    Citation Envoyé par Dotie Voir le message
    1. Au fait j'ai du eliminer la table Session . Les formations seront faite durant l'annee a des dates differente et pas vraiment connu a l'avance. Il y'a des formations qui pouront etre reproduit avec un certains temps. J'ai donc juste ajoute la date de formation dans ma table Formation
    Dit comme ça, j'ai pourtant l'impression qu'elle est bien utile cette notion de session...



    Un employé s'inscrit à une formation, des sessions de cette formation sont organisées à différentes dates, et l'employé participe à une de ces sessions.

  7. #7
    Nouveau Candidat au Club
    Salut F-leb,

    merci beaucoup. Toutes les formations ne se font pas une fois...il y a des formations qui doivent être refait après un nombre de temps.

    Pour le reste c'est ok?

    Aussi Tous les employés sont soumis aux formations obligatoire selon le poste qu'il occupe dans l'entreprise ..donc je ne crois pas qu'une inscription soit nécessaire dans mon cas .

  8. #8
    Responsable Arduino et Systèmes Embarqués

    Ok, pas d'inscription. Ce sont donc des formations organisées par les départements :



    Citation Envoyé par Dotie
    Toutes les formations ne se font pas une fois...il ya des formations qui doivent etre refait apres un nombre de temps.
    D'où la notion de session, non ? Une formation peut avoir lieu à différentes dates (différentes sessions). Dans le modèle, un employé peut toujours suivre la même formation à différentes dates.

    Citation Envoyé par Dotie Voir le message
    2. J'ai beaucoup reflechit sur comment joindre les tables Document , Formation et Controle ...je ne sais pas si c'est reussi
    . une formation peut avoir un control a la fin comme elle peut ne pas avoir
    . une formation peut avoir un ou deux( deux y compris le document de controle si cette formation necessite un control a la fin ) documents.
    C'est quoi exactement ces documents ? Des documents à donner aux employés en début de formation ? Ta base doit enregistrer des liens (noms de fichiers) vers ces documents ?

  9. #9
    Nouveau Candidat au Club
    Merci!

    oui il s'agit des documents de formations..genre l'employe recoit le document au debut de la formation...donc dans la table document je veux enregistrer le nom du fichier et le lien...vu que a la fin de chaque formation il peut avoir controle ou pas et que ces control sont aussi des document...j'ai donc pense a enregistrer tout les liens et noms de fichiers dans cette table.

  10. #10
    Nouveau Candidat au Club
    Salut f-leb,

    stp est-ce que tu peux m'écrire tes règles de gestion ? Je ne suis pas sûr de bien comprendre tes jointures entre les tables..surtout les jointures entre les table employes , participer et Session.

    Pourquoi DateFormation est une clé dans la table session ? J'avais pensé à un attribut simple...tu peux stp m'apporter plus d'explication ?

    Merci d'avance !

  11. #11
    Responsable Arduino et Systèmes Embarqués

    Citation Envoyé par Dotie Voir le message
    stp est ce que tu peux m'ecrir tes regle de gestions ..
    Moi je n'en ai pas, c'est censé être les tiennes


    Citation Envoyé par Dotie Voir le message
    je ne suis pas sur de bien comprendre tes jointures entre les tables..surtout les jointures entre les table employes , participer et Session.
    Exemple, avec 2 formations pour Access et Excel :

    Formation
    idFormation NomFormation
    1 Access
    2 Excel

    SessionFormation :
    idFormation DateFormation
    1 01/12/2019
    1 14/12/2019
    1 08/01/2020
    2 15/01/2020

    3 sessions pour la formation Access sont prévues, 1 session seulement pour la formation Excel.

    Participer:
    idEmployé idFormation DateFormation
    12 1 14/12/2019
    54 1 14/12/2019
    54 2 15/01/2020

    Les employés 12 et 54 suivent la formation Access du 14/12/2019.
    L'employé 54 suit ausi la formation Excel du 15/01/2020

    Une session est une formation relativement à une date. J'identifie donc une session avec la clé primaire sur le couple (idFormation, DateFormation). C'est ce qu'on appelle une clé primaire composite (utilisation de plusieurs champs combinés comme clé primaire).

    Si tu préfères tu fais :
    SessionFormation(idSession (numAuto), #idFormation, Dateformation)
    pour retomber sur quelque chose de plus "classique"... (clé primaire soulignée, clé étrangère précédée d'un #)

    Je reviens plus tard pour cette histoire de documents...

  12. #12
    Responsable Arduino et Systèmes Embarqués

    Citation Envoyé par Dotie Voir le message
    oui il s'agit des documents de formations..genre l'employe recoit le document au debut de la formation...donc dans la table document je veux enregistrer le nom du fichier et le lien...vu que a la fin de chaque formation il peut avoir controle ou pas et que ces control sont aussi des document...j'ai donc pense a enregistrer tout les liens et noms de fichiers dans cette table.
    Donc il y a deux types de document : des documents de formation et des documents de contrôle.
    Chaque document est associé à une formation.


  13. #13
    Nouveau Candidat au Club
    Salut f-leb,

    merci encore une fois de plus pour ta disponibilite. Je ne sais pas si je comprends mal ...mais c'est comme ci d'apres ton model plus haut un employe participe juste a une session d'une formation...l'employe est suppose participe au moins a une session ou plus d'une session selon les formations.

  14. #14
    Responsable Arduino et Systèmes Embarqués

    Bonjour,

    Citation Envoyé par f-leb Voir le message

    Participer:
    idEmployé idFormation DateFormation
    12 1 14/12/2019
    54 1 14/12/2019
    54 2 15/01/2020

    Les employés 12 et 54 suivent la formation Access du 14/12/2019.
    L'employé 54 suit ausi la formation Excel du 15/01/2020
    Je rajoute une ligne en rouge...

    Participer:
    idEmployé idFormation DateFormation
    12 1 14/12/2019
    54 1 14/12/2019
    54 2 15/01/2020
    54 2 22/01/2020
    L'employé 54 suit la formation Excel les 15 et 22/01/2020, donc un employé peut très bien suivre deux sessions différentes (voire plus) de la même formation.

    En mettant la clé primaire de la table Participer sur le triplet (idEmploye, idFormation, DateFormation), j'évite même la situation :
    Participer:
    idEmployé idFormation DateFormation
    12 1 14/12/2019
    12 1 14/12/2019 <-- impossible, doublon

    Et il faudrait encore rajouter un index "sans doublon" sur (idEmploye, DateFormation) pour éviter qu'un employé suive deux sessions le même jour (don d'ubiquité !)

  15. #15
    Nouveau Candidat au Club
    ci-dessous la version actualise de mon model:


    A la fin de chaque formation il y'a une attestation de formation..ces attestations doivent aussi etre enregistre dans ma base de donnees ou du moins le nom du fichier...pour ce fait j'ai du creer la table AttestationFormation ou je vais juste enregistrer les noms des fichiers des attestations...ca c'est la premier idee...mais je me suis aussi dis que je peux enregistrer tout les noms des fichiers dans ma table document y comprit les attestations de formation...sauf que la le minimum de documents que pourai avoir une formation doit etre 2 puisque toute formation a une attestation...je me demande encor ce qui passe le mieux...merci

    .Chaque formation a une attestation et toute attestion appartient a une formation
    .Un employe a une ou plusieurs attestations mais une attestion appartien a un employe

    je me demandais s'il etait encor necessaire de joindre la table AttestationFormation avec la table Employes vu que la table employes est deja liee a la Table Formation et que Formation est liee a AttestationFormation.

    excuser mes questions ooh..mais je veux comprendre..Merci

  16. #16
    Nouveau Candidat au Club
    Citation Envoyé par f-leb Voir le message
    Bonsoir Dotie,



    Dit comme ça, j'ai pourtant l'impression qu'elle est bien utile cette notion de session...



    Un employé s'inscrit à une formation, des sessions de cette formation sont organisées à différentes dates, et l'employé participe à une de ces sessions.

    je parlais surtout de cette representation...oubien je lis mal le lien entre Session et participer la?

  17. #17

  18. #18
    Responsable Arduino et Systèmes Embarqués

    Citation Envoyé par Dotie Voir le message
    .Chaque formation a une attestation et toute attestion appartient a une formation
    .Un employe a une ou plusieurs attestations mais une attestion appartien a un employe
    Ce n'est pas très clair, je dirais qu'une formation délivre des attestations aux employés qui suivent une formation.


    En fait, concernant ces documents, je me demande s'il n'y a pas confusion entre le modèle de document (le fichier d'origine qui sert de modèle) et le document (qui est le modèle complété et personnalisé pour chaque employé). Il faudrait tirer cette notion de "document" au clair...

  19. #19
    Nouveau Candidat au Club
    Citation Envoyé par f-leb Voir le message
    C'est possible d'avoir le schéma avec la notation "à la Access" ?
    Ce serai un peut difficile ...je n'ai pas access sur ma machine et je ne m'y connais pas avec access...mais bon je cherche un peu comment le faire.

  20. #20
    Nouveau Candidat au Club
    Ce message n'a pas pu être affiché car il comporte des erreurs.

###raw>template_hook.ano_emploi###