Forum des développeurs  

Le forum de référence en programmation et développement. Articles, cours et tutoriels du débutant au chef de projet et DBA confirmé.
Précédent   Forum des développeurs > Hardware, Systèmes et Logiciels > Microsoft Office > Access > Conception

Conception Le forum qui vous aide à résoudre vos questions relatives à la modélisation de votre base de données sous Access.

Réponse
 
Outils de la discussion
Vieux 03/11/2008, 16h36   #1 (permalink)
Invité régulier
 
Date d'inscription: septembre 2006
Messages: 12
Par défaut [A-03] Création d'un formulaire pour calcul d'heure de travail

Bonjour,

Voila je travail au sein d'une équipe, et mon responsable m'a demandé si je pouvais lui construire une BDD sous access 2003 pour gérer les heures des employés.

Actuellement chaque personne renseigne ses heures dans une feuilles excel, la personne met son heure d'arrivée le matin, heure de départ le midi, heure de reprise l'apm et heure de départ le soir, le calcul du temps de la journée se fait automatiquement. La personne envoie sa feuille excell par mail au leader et le leader doit l'eplucher la feuille de ses collaborateurs pour remplir un second tableau sous excel pour justifier les heures sup de la personne si elle en a fait.

L'idéal serait que chaque personne :
- se connecte à une BDD stockée sur un lecteur réseau,
- s'identifie à l'aide d'un login et mdp,
- entre ses heures (date du jour, heures d'arrivée, heures de départ, justificatif en cas de dépassement)
- puisse imprimer son propre Compte rendu d'activité (CRA) mensuel

Le Leader n'aurait plus qu'a imprimer les CRA de chacun, dans un état fait sur mesure.

Seul hic je suis un peu novice avec Access et j'aurais bien besoin de vos conseil pour m'aider à construire cette base.

Par avance je vous remercie.

Dernière modification par Jeannot45 ; 03/11/2008 à 16h43 Motif: Normalisation de la version
Silverscott est déconnecté   Envoyer un message privé Réponse avec citation
Vieux 03/11/2008, 16h45   #2 (permalink)
Rédacteur/Modérateur
 
Avatar de Jeannot45
 
Date d'inscription: octobre 2004
Localisation: Villemurlin près de Sully sur Loire
Âge: 59
Messages: 1 559
Par défaut

Bonjour,

Afin de partir sur de bonnes bases, je conseille un peu de lecture :

La conception
Les relations et les jointures

Bonne lecture
__________________
Jeannot
_________________________________________
On ne devrait pas demander l'impossible (L. De Vinci)
Ne pas prévoir, c'est déjà gémir ... (L. de Vinci)
La rigueur vient toujours à bout de l'obstacle. (L. De Vinci)
_____________________________
Liens Office indispensables à visiter: Cours (Tutos), F.A.Q., Sources VBA

Utilisez le Forum pour poser vos questions pas ma MP
Jeannot45 est déconnecté   Envoyer un message privé Réponse avec citation
Vieux 03/11/2008, 16h55   #3 (permalink)
Invité régulier
 
Date d'inscription: septembre 2006
Messages: 12
Par défaut

Ok je te remercie Jeannot, vais déja aller faire un tour sur tes liens.

Merci
Silverscott est déconnecté   Envoyer un message privé Réponse avec citation
Vieux 04/11/2008, 12h26   #4 (permalink)
Invité régulier
 
Date d'inscription: septembre 2006
Messages: 12
Par défaut

Bon alors ma lecture, je viens de créer ma première table :

Table "Employes"
  • ref_employé : N° assurant l'unicité de l'occurrence (NumeroAuto)
  • nom : Prénom + Nom de l'employé (Texte)
  • photo : Photo de la personne (ObjetOLE)
  • matricule : N° Matricule de l'employé (Numérique)
  • service : Service auquel appartient l'employé (Texte)
  • responsable : Prénom + Nom du responsable hierarchique de l'employé (Texte)
  • hjc : Horaires à la journée que l'employé est tenu de faire contractuellement (Date/Heure)
Bon c'est un début, il me reste à concevoir comment mettre sur papier le système pour mettre les horaires sur des journées.

Voila ce que j'ai pensé :

Table "Journee"
  • ref_journee : N° assurant l'unicité de l'occurrence (NumeroAuto)
  • date : Date du jour ou vont être saisi les horaires (Date/Heure - Date,abrégé)
  • ha_am : Heure de début de journée (Date/Heure - Date,abrégé)
  • hd_hm : Heure de départ pour le déjeuner (Date/Heure - Date,abrégé)
  • ha_pm : Heure de reprise l'après midi (Date/Heure - Date,abrégé)
  • hf_pm : Heure de fin de journée (Date/Heure - Date,abrégé)
  • ttj : Temps total passé sur lieu de travail (Date/Heure - Date,abrégé)
  • hs : Temps sup calculé si ttj > hjc (Date/Heure - Date,abrégé)

Dernière modification par Silverscott ; 04/11/2008 à 13h05
Silverscott est déconnecté   Envoyer un message privé Réponse avec citation
Vieux 04/11/2008, 12h45   #5 (permalink)
Rédacteur/Modérateur
 
Avatar de Jeannot45
 
Date d'inscription: octobre 2004
Localisation: Villemurlin près de Sully sur Loire
Âge: 59
Messages: 1 559
Par défaut

Bonjour,

A la lecture de ton post, il me vient quelques remarques

Les champs ne contiennent qu'une seule information. Ce qui sous-entend que pour le nom et le prénom du salarié, il te faut deux champ.
Le responsable : je le suppose il sera Responsable de plusieurs salariés. Ce qui sous-entend donc une table des responsables (avec un CodeResponsable (Clé primaire) dans la table T_Responsables et CodeResponsable (Clé étrangère) dans la table T_Salariés)
Le service : Plusieurs salariés appartiennent au même Service. On retrouve le même principe que pour le responsable

Et qu'advient-il des heures.
Un table avec le CodeSalarié, la date, les heures

Bonne réflexion
__________________
Jeannot
_________________________________________
On ne devrait pas demander l'impossible (L. De Vinci)
Ne pas prévoir, c'est déjà gémir ... (L. de Vinci)
La rigueur vient toujours à bout de l'obstacle. (L. De Vinci)
_____________________________
Liens Office indispensables à visiter: Cours (Tutos), F.A.Q., Sources VBA

Utilisez le Forum pour poser vos questions pas ma MP
Jeannot45 est déconnecté   Envoyer un message privé Réponse avec citation
Vieux 04/11/2008, 13h03   #6 (permalink)
Invité régulier
 
Date d'inscription: septembre 2006
Messages: 12
Par défaut

Citation:
Envoyé par Jeannot45 Voir le message
Bonjour,

A la lecture de ton post, il me vient quelques remarques

Les champs ne contiennent qu'une seule information. Ce qui sous-entend que pour le nom et le prénom du salarié, il te faut deux champ.
Pourquoi ? Quel interêt ? Disons que dans ma tête j'imagine la personne ouvrant un formulaire dans lequel il y aura un champs ascenseur dans lequel elle choisira son nom parmi une liste, dans le deuxième champs son mdp pour se connecter à son profil.... Est ce possible ?
Citation:
Envoyé par Jeannot45 Voir le message
Le responsable : je le suppose il sera Responsable de plusieurs salariés. Ce qui sous-entend donc une table des responsables (avec un CodeResponsable (Clé primaire) dans la table T_Responsables et CodeResponsable (Clé étrangère) dans la table T_Salariés)
La je comprends pas tout lol mais bon je viens de créer la table suivante :

Table "responsables"
  • ref_responsable : N° assurant l'unicité de l'occurrence (NumeroAuto)
  • nom : Prénom + Nom du responsable


Citation:
Envoyé par Jeannot45 Voir le message
Le service : Plusieurs salariés appartiennent au même Service. On retrouve le même principe que pour le responsable
Pour l'instant cette base ne va servir qu'a un seul service, après on verra si elle fait sa place dans les autres...[/quote]
Citation:
Envoyé par Jeannot45 Voir le message
Et qu'advient-il des heures.
Un table avec le CodeSalarié, la date, les heures

Bonne réflexion
C'est fait j'ai mis à jour le post précédent
Silverscott est déconnecté   Envoyer un message privé Réponse avec citation
Vieux 04/11/2008, 17h51   #7 (permalink)
Invité régulier
 
Date d'inscription: septembre 2006
Messages: 12
Par défaut

Bon je viens de me lire le tuto sur les Jointures et relations dans Access...

Heuuu la vais avoir besoin de soutien parce que que j'ai un peu de mal !!!

Bon résumons les tables que j'ai créé pour ma base :

Table "Employes"
  • ref_employé : N° assurant l'unicité de l'occurrence (NumeroAuto)
  • nom : Nom + Prénom de l'employé (Texte)
  • photo : Photo de la personne (ObjetOLE)
  • matricule : N° Matricule de l'employé (Numérique)
  • service : Service auquel appartient l'employé (Texte)
  • responsable : Nom + Prénom du responsable hiérarchique de l'employé (Champ "nom" dans Table "responsables")
  • hjc : Horaires à la journée que l'employé est tenu de faire contractuellement (Date/Heure)
Table "Journee"
  • ref_journee : N° assurant l'unicité de l'occurrence (NumeroAuto)
  • nom : Nom de la personne qui entre ses heures dans la BDD (Champ "nom" dans Table "Empoyes")
  • date : Date du jour ou vont être saisi les horaires (Date/Heure - Date,abrégé)
  • ha_am : Heure de début de journée (Date/Heure - Date,abrégé)
  • hd_hm : Heure de départ pour le déjeuner (Date/Heure - Date,abrégé)
  • ha_pm : Heure de reprise l'après midi (Date/Heure - Date,abrégé)
  • hf_pm : Heure de fin de journée (Date/Heure - Date,abrégé)
  • ttj : Temps total passé sur lieu de travail (Date/Heure - Date,abrégé)
  • hs : Temps sup calculé si ttj > hjc (Date/Heure - Date,abrégé)
Table "responsables"
  • ref_responsable : N° assurant l'unicité de l'occurrence (NumeroAuto)
  • nom : Nom + Prénom du responsable (Texte)

Ci joint un screenshot des relations que j'ai faite en fonction de ce que j'ai compris...
Images attachées
Type de fichier : jpg jointures.jpg (49,0 Ko, 11 affichages)
Silverscott est déconnecté   Envoyer un message privé Réponse avec citation
Vieux 05/11/2008, 06h23   #8 (permalink)
Responsable PowerPoint
 
Avatar de Philippe JOCHMANS
 
Date d'inscription: mai 2005
Localisation: Loir et Cher et Touraine
Âge: 40
Messages: 10 399
Envoyer un message via MSN à Philippe JOCHMANS
Par défaut

Bonjour

En complément de ce que vient de te dire Jeannot45

Nom et prénom

Cela n'est pas fait pour t'embêter, mais il faut tout séparer, un jour ton chef va te demander de sortir une liste avec le nom en premier, et une autre liste avec le prénom en premier, et crois moi c'est la réalité.

Photo

J'utiliserais un chemin où se trouve la photo sur ton disque dur.

Service

Il faudrait une table à part, avec un identifiant et le nom du service, le tout lié par l'identifiant.

Dans ton schéma relationnel, il ne faut pas lier les noms de l'employé et la table employé et de la table journée, dans la table journée tu dois avoir l'identifiant de l'employé (ref_employé) et c'est cette identifiant (que l'on appelle clé étrangère) qui doit être liée à la clé primaire de la table employé.

De même pour responsable, on lie les clés et non les noms.

Voilà pour l'instant de quoi cogiter

Philippe
__________________
En cas de questions techniques par MP ou message visiteur
Office : :Les Cours, Les FAQs
VB : Les Cours, Les FAQs
Mes articles : ici
Me connaitre
Philippe JOCHMANS est déconnecté   Envoyer un message privé Réponse avec citation
Vieux 14/11/2008, 15h16   #9 (permalink)
Invité de passage
 
Date d'inscription: novembre 2008
Localisation: Paris
Âge: 28
Messages: 1
Par défaut

Bonjour Sylverscott,

Je pense que nos managers se connaissent car le mien vient de me demander la même chose!

Donc ton projet m'interesse fortement, et je pense qu'a deux nous devrions pouvoir sortir quelque chose de pas trop mal.

Pour le moment, j'ai réalisé du temporaire avec des fichiers excel individuels et une petite macro qui oblige les personnes à valider l'heure d'arrivée et de départ. J'attaque depuis peu le dvp sous access et c'est loin d'être simple.

Peux tu éventuellement m'envoyer ton début de base, ainsi nous pourrons bosser dessus ensemble avec la même "mouture" ?

Cordialement,

Yannnick
polux4277 est déconnecté   Envoyer un message privé Réponse avec citation
Vieux 25/11/2008, 12h27   #10 (permalink)
Invité régulier
 
Date d'inscription: septembre 2006
Messages: 12
Par défaut

Bonjour tout le monde,

Désolé de mon absence, pas eu bcp de temps ces derniers temps donc j'avais mis mon projet de coté...

Polux, je t'ai mis mon fichier en PJ, pas de souci pour partager les infos je suis preneur également
Fichiers attachés
Type de fichier : rar Copie de Chronos.rar (24,0 Ko, 3 affichages)
Silverscott est déconnecté   Envoyer un message privé Réponse avec citation
Vieux 27/11/2008, 12h08   #11 (permalink)
Modérateur
 
Avatar de Chtulus
 
Date d'inscription: avril 2008
Localisation: Lyon
Âge: 29
Messages: 1 257
Envoyer un message via MSN à Chtulus
Par défaut

Bonjour,

Citation:
ttj : Temps total passé sur lieu de travail (Date/Heure - Date,abrégé)
hs : Temps sup calculé si ttj > hjc (Date/Heure - Date,abrégé)
Si ce sont des champs calculés, j'éviterais. Les requêtes servent à cela !

__________________
- De quelque manière qu'on s'y prenne on s'y prend toujours mal -
-Sigmund Freud-

SQL : http://sql.developpez.com/
Access : http://access.developpez.com/cours/

Chtulus est déconnecté   Envoyer un message privé Réponse avec citation
Vieux 30/11/2008, 16h23   #12 (permalink)
Invité régulier
 
Date d'inscription: septembre 2006
Messages: 12
Par défaut

Citation:
Envoyé par Chtulus Voir le message
Bonjour,

Si ce sont des champs calculés, j'éviterais. Les requêtes servent à cela !

J'en prends note Chtulu, merci !
Silverscott est déconnecté   Envoyer un message privé Réponse avec citation
NEWS ACCESSF.A.Q AccessF.A.Q VBATutorielsSourcesOutilsLivresAccess TVAccess 2007

Réponse

Précédent   Forum des développeurs > Hardware, Systèmes et Logiciels > Microsoft Office > Access > Conception



Outils de la discussion

Règles de messages
Vous ne pouvez pas créer de nouvelles discussions
Vous ne pouvez pas envoyer des réponses
Vous ne pouvez pas envoyer des pièces jointes
Vous ne pouvez pas modifier vos messages

Les balises BB sont activées : oui
Les smileys sont activés : oui
La balise [IMG] est activée : oui
Le code HTML peut être employé : non
Trackbacks are non
Pingbacks are non
Refbacks are non
Navigation rapide