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 15/06/2011, 11h00   #1
Invité de passage
 
Inscription : janvier 2011
Messages : 40
Détails du profil
Informations forums :
Inscription : janvier 2011
Messages : 40
Points : 4
Points : 4
Par défaut Création d'un planning hebdomadaire

Bonjour à tous,

Pour commencer, voilà ma situation.
Après un premier stage dans l'entreprise celle-ci décide de renouer l'expérience
et m'inviter pour effectuer mon job d'été dans un autre secteur de l'entreprise.
J'accepte donc cette demande.

Mon problème est que la mission que je rencontre actuellement, a pour but de réaliser le planning hebdomadaire et quotidien du personnel de l'usine.
Cependant, cette planification n'est pas la même que celle qu'utilise un cabinet dentaire ou autres.

En effet, ce planning hebdomadaire doit ressembler un peu près a ça :


Tout en permettant la gestion des repos (rtt, cp, etc.) de chaque salariées.

Je viens donc vous demandez votre aide car je ne sais pas comment procéder pour obtenir une base comme celle souhaitée.
En effet, les point importants qui me bloque sont principalement l'IHM et la gestion des dates.

Merci d'avance de vote réponse.
Vetter est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/06/2011, 13h36   #2
Rédacteur/Modérateur
 
Avatar de User
 
Homme Denis
Développeur informatique
Inscription : août 2004
Messages : 3 206
Détails du profil
Informations personnelles :
Nom : Homme Denis
Âge : 42
Localisation : France

Informations professionnelles :
Activité : Développeur informatique

Informations forums :
Inscription : août 2004
Messages : 3 206
Points : 5 258
Points : 5 258
Bonjour,

Il faut passer par une table T_Planning contenant les dates et l'identifiant de la personne, une table T_personnel.

Puis relier ces 2 tables par une jointure gauche sur l'identifiant des personnes.

Et enfin faire une requête croisée, avec en en-têtes de lignes les personnes et en en-têtes de colonnes les jours de la semaine.

Voici des exemples:
plannings hebdomadaires

Voir les exemples "Planning v4_1.mdb" et "Planning v4_2.mdb"

A+
__________________
Merci de ne pas poster sur mon profil pour des problèmes techniques. Pour celà vous pouvez utiliser le forum ou m'envoyer un mp.

Bon développement !


Mes tutoriels et contributions sur ma page perso:
Ma page personnelle
User est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 15/06/2011, 15h40   #3
Invité de passage
 
Inscription : janvier 2011
Messages : 40
Détails du profil
Informations forums :
Inscription : janvier 2011
Messages : 40
Points : 4
Points : 4
que veux tu dire pour les dates ???
Vetter est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/06/2011, 17h15   #4
Rédacteur/Modérateur
 
Avatar de User
 
Homme Denis
Développeur informatique
Inscription : août 2004
Messages : 3 206
Détails du profil
Informations personnelles :
Nom : Homme Denis
Âge : 42
Localisation : France

Informations professionnelles :
Activité : Développeur informatique

Informations forums :
Inscription : août 2004
Messages : 3 206
Points : 5 258
Points : 5 258
Les dates des jours travaillés dans l'usine...
__________________
Merci de ne pas poster sur mon profil pour des problèmes techniques. Pour celà vous pouvez utiliser le forum ou m'envoyer un mp.

Bon développement !


Mes tutoriels et contributions sur ma page perso:
Ma page personnelle
User est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/06/2011, 22h27   #5
Invité de passage
 
Inscription : janvier 2011
Messages : 40
Détails du profil
Informations forums :
Inscription : janvier 2011
Messages : 40
Points : 4
Points : 4
L'exemple que tu m'as proposer me semble assez semblable a ma mission.
Je l'ai donc repris, mais je rencontre un second problème.
Il faudrait que pour chaque machines je possède les poste dont elle possède.

Pour exemple :

Vetter est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/06/2011, 22h40   #6
Rédacteur/Modérateur
 
Avatar de User
 
Homme Denis
Développeur informatique
Inscription : août 2004
Messages : 3 206
Détails du profil
Informations personnelles :
Nom : Homme Denis
Âge : 42
Localisation : France

Informations professionnelles :
Activité : Développeur informatique

Informations forums :
Inscription : août 2004
Messages : 3 206
Points : 5 258
Points : 5 258
Il S'agit d'1 problème de conception :

Il te faut déjà créer les tables qui contiendront tes données, par exemple :

T_Planning(Jour, IdMachine, IdPoste,...)
T_Poste(IdPoste,NomPoste,...)
T_Machine(IdMachine,NomMachine...)
...

et éventuellement une table pour la relation entre T_Poste et T_Machine du style :
T_MachinePoste(IdMachine,IdPoste...)


Pose déjà tes tables après tu pourras avancer sur le planning

Voici des exemples qui pourront t'aider dans la mise en place de ton projet,
ils reposent sur 2 modèles légèrement différents:

PlanningUsine.zip

Voir plus précisément le fichier "PlanningUsine v3.mdb"

Bon courage
__________________
Merci de ne pas poster sur mon profil pour des problèmes techniques. Pour celà vous pouvez utiliser le forum ou m'envoyer un mp.

Bon développement !


Mes tutoriels et contributions sur ma page perso:
Ma page personnelle
User est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 20/06/2011, 11h55   #7
Invité de passage
 
Inscription : janvier 2011
Messages : 40
Détails du profil
Informations forums :
Inscription : janvier 2011
Messages : 40
Points : 4
Points : 4
Merci, j'ai pu inclure les poste par machines.

Mon problème actuelle concerne la gestion des repos dans la même base.
Pour ce faire, j'ai décidé de créer un second planning permettant de gérer les repos.
J'ai donc créer toute les requête permettant cette création.
Mais lorsque je veux afficher mon formulaire le message suivant s'affiche :



Comment dois-je procéder pour permettre cette affichage ?

Encore merci de ton aide
Vetter est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 20/06/2011, 13h45   #8
Rédacteur/Modérateur
 
Avatar de User
 
Homme Denis
Développeur informatique
Inscription : août 2004
Messages : 3 206
Détails du profil
Informations personnelles :
Nom : Homme Denis
Âge : 42
Localisation : France

Informations professionnelles :
Activité : Développeur informatique

Informations forums :
Inscription : août 2004
Messages : 3 206
Points : 5 258
Points : 5 258
Salut,

Est-ce que la zone de texte "DateD" existe dans le formulaire "F_Planning_Repos" ?

Sinon joins moi ou envoie moi ta base au format 2000

A+
__________________
Merci de ne pas poster sur mon profil pour des problèmes techniques. Pour celà vous pouvez utiliser le forum ou m'envoyer un mp.

Bon développement !


Mes tutoriels et contributions sur ma page perso:
Ma page personnelle
User est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 20/06/2011, 14h04   #9
Invité de passage
 
Inscription : janvier 2011
Messages : 40
Détails du profil
Informations forums :
Inscription : janvier 2011
Messages : 40
Points : 4
Points : 4
C'est bon j'ai résolu le problème.
En fait, il fallait modifier une des requete en ajoutant le Parametre correspondant a DateD en SQL
Vetter est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 20/06/2011, 14h29   #10
Invité de passage
 
Inscription : janvier 2011
Messages : 40
Détails du profil
Informations forums :
Inscription : janvier 2011
Messages : 40
Points : 4
Points : 4
Pour la gestion des repos je voulai reprendre le planning mais au lieu de mettre les machines et les postes, affiche seulement les employés.

Mais lorsque que j'ai pris les requête est que je les ai adapté pour obtenir ce planning, il en ressort que je n'obtiens rien à l'affichage alors que ma table T_Employe n'est pas vide.

Saurais-tu comment faire ?
Vetter est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 20/06/2011, 16h23   #11
Rédacteur/Modérateur
 
Avatar de User
 
Homme Denis
Développeur informatique
Inscription : août 2004
Messages : 3 206
Détails du profil
Informations personnelles :
Nom : Homme Denis
Âge : 42
Localisation : France

Informations professionnelles :
Activité : Développeur informatique

Informations forums :
Inscription : août 2004
Messages : 3 206
Points : 5 258
Points : 5 258
Dans La requête "R_PlanningRepos" il faut faire une jointure gauche (left join) entre la table "T_Employe" et la requete "R_PlanRepos",

De plus il faut utiliser une table "T_PlanningRepos" avec l'identifiant de l'employé, La date et un autre champ "Repos"...

Voici 2 exemples:
PlanningRepos.zip

Tu devrais pouvoir t'en sortir avec ça

A+
__________________
Merci de ne pas poster sur mon profil pour des problèmes techniques. Pour celà vous pouvez utiliser le forum ou m'envoyer un mp.

Bon développement !


Mes tutoriels et contributions sur ma page perso:
Ma page personnelle
User est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 21/06/2011, 10h24   #12
Invité de passage
 
Inscription : janvier 2011
Messages : 40
Détails du profil
Informations forums :
Inscription : janvier 2011
Messages : 40
Points : 4
Points : 4
Je voudrais savoir également comment je peux mettre le même poste mais plusieurs fois dans la même machine.

Pour exemple sur une des machine, j'ai besoin de 2 conducteur.

De plus, je voudrais savoir comment changer la couleur de fond, en effet je voudrais changer la couleur pour permettre de différencier les machines et ainsi obtenir une meilleur lecture à l'affichage.

Je remercie encore de l'aide d'un expert comme toi
Vetter est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 21/06/2011, 12h11   #13
Rédacteur/Modérateur
 
Avatar de User
 
Homme Denis
Développeur informatique
Inscription : août 2004
Messages : 3 206
Détails du profil
Informations personnelles :
Nom : Homme Denis
Âge : 42
Localisation : France

Informations professionnelles :
Activité : Développeur informatique

Informations forums :
Inscription : août 2004
Messages : 3 206
Points : 5 258
Points : 5 258
Citation:
Je voudrais savoir également comment je peux mettre le même poste mais plusieurs fois dans la même machine.

Pour exemple sur une des machine, j'ai besoin de 2 conducteur.
Dans l'exemple que je t'ai envoyé il y a une table T_Machine et une table T_Poste:

Dans la table T_Poste(NP, NomPoste, IdMachine)

Tu peux avoir:

NP         NomPoste          IdMachine
1          Conducteur         1 
2          Conducteur         1
3          Mécanicien          1
4          Conducteur         2
5          Conducteur         2
6          Poste6                2
...


Tu n'as qu'a répéter le poste "conducteur" pour une même machine (ici 1 et 2 )...


Citation:
De plus, je voudrais savoir comment changer la couleur de fond, en effet je voudrais changer la couleur pour permettre de différencier les machines et ainsi obtenir une meilleur lecture à l'affichage.

Dans le formulaire "SF_Planning" de la version "PlanningUsine v3.mdb"

Il faut mettre le champ "IdMachine",

Puis sélectionner la liste des champs et choisir menu"Format", puis "Mise en forme conditionnelle...".



et mettre la condition IdMachine mod 2 = 1 avec une couleur de fond, de façon à alterner les couleurs d'une machine à l'autre:



Pour la mise en forme conditionnelle voici de la lecture:
http://warin.developpez.com/access/mfc/

A+
__________________
Merci de ne pas poster sur mon profil pour des problèmes techniques. Pour celà vous pouvez utiliser le forum ou m'envoyer un mp.

Bon développement !


Mes tutoriels et contributions sur ma page perso:
Ma page personnelle
User est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 21/06/2011, 12h24   #14
Invité de passage
 
Inscription : janvier 2011
Messages : 40
Détails du profil
Informations forums :
Inscription : janvier 2011
Messages : 40
Points : 4
Points : 4
Citation:
Dans l'exemple que je t'ai envoyé il y a une table T_Machine et une table T_Poste:

Dans la table T_Poste(NP, NomPoste, IdMachine)

Tu peux avoir:

NP NomPoste IdMachine
1 Conducteur 1
2 Conducteur 1
3 Mécanicien 1
4 Conducteur 2
5 Conducteur 2
6 Poste6 2
...


Tu n'as qu'a répéter le poste "conducteur" pour une même machine (ici 1 et 2 )...
J'avais déjà envisager d'utiliser cette méthode ci mais le problème est que si je la suis j'aurais deux poste différents lors de l'attribution des poste pour les employés en fonction des machines alors que ce poste est le même sauf qu'il en faut deux.

Donc j'ai essayé de faire ainsi :

NP NomPoste IdMachine
1 Conducteur 1
1 Conducteur 1
3 Mécanicien 1
4 Conducteur 2
5 Conducteur 2
6 Poste6 2
...

Seulement, j'ai un message d'erreur qui m'interdit de faire des doublons au niveau de NP.
Vetter est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 21/06/2011, 12h55   #15
Rédacteur/Modérateur
 
Avatar de User
 
Homme Denis
Développeur informatique
Inscription : août 2004
Messages : 3 206
Détails du profil
Informations personnelles :
Nom : Homme Denis
Âge : 42
Localisation : France

Informations professionnelles :
Activité : Développeur informatique

Informations forums :
Inscription : août 2004
Messages : 3 206
Points : 5 258
Points : 5 258
Et tu peux avoir combien d'employés au maximum sur un même poste ?
__________________
Merci de ne pas poster sur mon profil pour des problèmes techniques. Pour celà vous pouvez utiliser le forum ou m'envoyer un mp.

Bon développement !


Mes tutoriels et contributions sur ma page perso:
Ma page personnelle
User est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 21/06/2011, 13h00   #16
Invité de passage
 
Inscription : janvier 2011
Messages : 40
Détails du profil
Informations forums :
Inscription : janvier 2011
Messages : 40
Points : 4
Points : 4
au max 5
Vetter est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 21/06/2011, 13h05   #17
Rédacteur/Modérateur
 
Avatar de User
 
Homme Denis
Développeur informatique
Inscription : août 2004
Messages : 3 206
Détails du profil
Informations personnelles :
Nom : Homme Denis
Âge : 42
Localisation : France

Informations professionnelles :
Activité : Développeur informatique

Informations forums :
Inscription : août 2004
Messages : 3 206
Points : 5 258
Points : 5 258
Dans ce cas je trouverai plus logique d'avoir un planning avec en en-tête de ligne les employés, en en-têtes de colonnes les jours de la semaine et à l'intersection le poste (avec éventuellement le nom de la machine en plus)...
__________________
Merci de ne pas poster sur mon profil pour des problèmes techniques. Pour celà vous pouvez utiliser le forum ou m'envoyer un mp.

Bon développement !


Mes tutoriels et contributions sur ma page perso:
Ma page personnelle
User est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 21/06/2011, 14h16   #18
Invité de passage
 
Inscription : janvier 2011
Messages : 40
Détails du profil
Informations forums :
Inscription : janvier 2011
Messages : 40
Points : 4
Points : 4
Oui mais je préférerai garder ce type de tableau car il existe beaucoup d'employé
Vetter est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 21/06/2011, 14h43   #19
Invité de passage
 
Inscription : janvier 2011
Messages : 40
Détails du profil
Informations forums :
Inscription : janvier 2011
Messages : 40
Points : 4
Points : 4
En fait, je pense que l'on peut ajouter plusieurs poste du même nom, de même machine mais pas de même id dans la table T_Poste et ensuite supprimer les doublons dans la liste lorsque j'arrive sur l'ajout des compétence:



Ensuite lorsque je sélectionne le poste FRIGO tout les poste FRIGO prendront le même employé.

Faire cela reste pour moi très difficile.

Aurais-tu une solution?
Vetter est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 21/06/2011, 15h57   #20
Rédacteur/Modérateur
 
Avatar de User
 
Homme Denis
Développeur informatique
Inscription : août 2004
Messages : 3 206
Détails du profil
Informations personnelles :
Nom : Homme Denis
Âge : 42
Localisation : France

Informations professionnelles :
Activité : Développeur informatique

Informations forums :
Inscription : août 2004
Messages : 3 206
Points : 5 258
Points : 5 258
Dans la source de ta liste il faut mettre:

Code sql :
1
2
SELECT DISTINCT NomPoste
FROM T_Post

Remarque importante :

Attention à ne pas confondre un poste (table "T_Poste") et un type de poste (table "T_TypePoste") où les contenus sont uniques.

T_TypePoste
EMBALLAGE
CARTON
CONTAINER AT
CONTAINER CHOCO
FRIGO

A+

A+
__________________
Merci de ne pas poster sur mon profil pour des problèmes techniques. Pour celà vous pouvez utiliser le forum ou m'envoyer un mp.

Bon développement !


Mes tutoriels et contributions sur ma page perso:
Ma page personnelle
User 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 21h12.


 
 
 
 
Partenaires

Hébergement Web