OVH Cloud OVH Cloud

Requête

3 réponses
Avatar
curt
Bonjour à tous.

Je suis en train de faire une base de données comportant une table LISTE DU
PERSONNEL et une table TÂCHE. Dans un formulaire, je choisis une personne de
la liste puis je choisis plusieurs tâches (nommées tâche 1, tâche 2, etc..)
au moyen d'une liste déroulante. Sur chaque sélection de tâche, j'affecte un
temps dans un champ HEURE.

Question, comment faire la requête qui me permettrait de regrouper par type
de tâche, le nombre d'heure effectué ?

3 réponses

Avatar
Gafish
"curt" a écrit dans le message de news:

Bonjour à tous.


Bonjour,

Je suis en train de faire une base de données comportant une table LISTE
DU
PERSONNEL et une table TÂCHE. Dans un formulaire, je choisis une personne
de
la liste puis je choisis plusieurs tâches (nommées tâche 1, tâche 2,
etc..)
au moyen d'une liste déroulante. Sur chaque sélection de tâche, j'affecte
un
temps dans un champ HEURE.

Question, comment faire la requête qui me permettrait de regrouper par
type
de tâche, le nombre d'heure effectué ?


J'imagine que tu as également une troisième table qui te permet de stocker
ce que tu décris, à savoir les tâches par personnel.
Sur cette table, tu fais une requête de regroupement (pour cela tu cliques
sur le sigma dans la barre de menu), tu selectionnes le champ type tache,
dans opérations tu mets "regroupement", et tu selectionnes ton champ durée.
Sur cette durée tu mets en opérations somme.

Arnaud

Avatar
curt
Merci pour la rapidité, mais je vais compléter ma demande.
Chaque champ Tache, noté Tache 1, Tache2, etc est stocké effectivement dans
une table VENTILATION (bien vu l'oubli !!).

Ce que je ne sais pas réaliser, c'est une somme pour chaque type de tâche
qui peut être n'importe où dans les champ TACHE, puisque ces champ TACHE sont
sur une liste déroulante.

Pour être plus clair, pour une date donnée et pour un individu donné, je
peux avoir dans TACHE1 la valeur DEPLACEMENT et sur une date suivante, la
valeur DEPLACEMENT peeut se retrouver dans le champ TACHE2

Comment faire pour récupérer la somme du nombre d'heure passé en DEPLACEMENT
sur un ensemble de date. (c'est là que ça se complique).

D'avance merci


"curt" a écrit dans le message de news:

Bonjour à tous.


Bonjour,

Je suis en train de faire une base de données comportant une table LISTE
DU
PERSONNEL et une table TÂCHE. Dans un formulaire, je choisis une personne
de
la liste puis je choisis plusieurs tâches (nommées tâche 1, tâche 2,
etc..)
au moyen d'une liste déroulante. Sur chaque sélection de tâche, j'affecte
un
temps dans un champ HEURE.

Question, comment faire la requête qui me permettrait de regrouper par
type
de tâche, le nombre d'heure effectué ?


J'imagine que tu as également une troisième table qui te permet de stocker
ce que tu décris, à savoir les tâches par personnel.
Sur cette table, tu fais une requête de regroupement (pour cela tu cliques
sur le sigma dans la barre de menu), tu selectionnes le champ type tache,
dans opérations tu mets "regroupement", et tu selectionnes ton champ durée.
Sur cette durée tu mets en opérations somme.

Arnaud






Avatar
Gafish
"curt" a écrit dans le message de news:

Merci pour la rapidité, mais je vais compléter ma demande.
Chaque champ Tache, noté Tache 1, Tache2, etc est stocké effectivement
dans
une table VENTILATION (bien vu l'oubli !!).

Ce que je ne sais pas réaliser, c'est une somme pour chaque type de tâche
qui peut être n'importe où dans les champ TACHE, puisque ces champ TACHE
sont
sur une liste déroulante.

Pour être plus clair, pour une date donnée et pour un individu donné, je
peux avoir dans TACHE1 la valeur DEPLACEMENT et sur une date suivante, la
valeur DEPLACEMENT peeut se retrouver dans le champ TACHE2


Dac, mais alors dans ce cas il s'agit d'un souci de structure de la table.
Tu as une table j'imaigne avec utilisateur, tache1, tache2, tache3 ?
Ce n'est pas une bonne structure pour deux raisons. La première c'est que si
demain on te dit que ce n'est plus trois tâches (je prends par rapport à mon
exemple, je ne sais pas combien de champ tâche tu as au total), mais quatre
tâches, tu vas être embêté.
L'autre source à problème tu es en train de l'experimenter, c'est quand tu
veux une synthèse pour une valeur qui est explosée dans plusieurs champs.
La bonne méthode serait de multiplier les lignes. Avoir juste un champ
utilisateur et un champ tâche (plus des infos supplémentaires commme par
exemple la durée, ou l'ordre des tâches si c'est important). Si le même
utilisateur fait trois tâches, tu auras trois lignes.
Tu résoud du même coup les deux problèmes cités ci-dessus, à savoir qu'il te
faut une tâche de plus, tu fait juste une ligne de plus. Pour faire ta
requête, tu fais juste un regroupement de tâches comme je t'ai indiqué.

Arnaud