Bonjour,
Je suis en train de développer une base access permettant de gérer une équipe projet, je dois fournir à mon manager un rapport sur l'activité de chaque employé, en fait il voudrais avoir le nombre de jour travaillés effectifs (en prévision) sur l'année en cours (en gros = jours de travail - jours de congés prévus).
J'ai crée une requete pour pouvoir afficher tout ça, mais la requete ne me retourne rien ... alors qu'elle devrais me retourner un résultat.
Voici la structure de mes tables :
Code SQL : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 calendar (day(date) ,week(text),working_day(yes/no),month(number),year(number)) indispo (id_ressource(text),day(date) ) ressources (id_ressource(text) ,name(text))
indispo est la relation entre les 2 tables calendar et ressources.
Voici la requete :
Le "MMA" correspond à l'identifiant d'un employé qui devras etre donné en paramètre dans un formulaire que je ferais par la suite, j'utilise ici l'identifiant d'un employé ayant posé des congés pour vérifier que ma requete fonctionne ...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15 SELECT ressources.id_ressource, calendar.year, calendar.month, Count(calendar.day) AS CountOfday FROM ressources, calendar WHERE (((ressources.id_ressource)="MMA") AND ((calendar.year)=2007) AND ((calendar.working_day)=Yes) AND NOT EXISTS ( SELECT ressources.id_ressource, calendar.year, calendar.month, Count(calendar.day) AS CountOfday FROM ressources INNER JOIN (calendar INNER JOIN indispo ON calendar.day = indispo.day) ON ressources.id_ressource = indispo.id_ressource WHERE (((ressources.id_ressource)="MMA") AND ((calendar.year)=2007) AND ((calendar.working_day)=Yes)) GROUP BY ressources.id_ressource, calendar.year, calendar.month; )) GROUP BY ressources.id_ressource, calendar.year, calendar.month;
Merci pour votre aide.
Partager