Bonjour,

Je me permets de reposer la question ici, l'ayant déjà posée sans succès sur le forum Access.

Mon problème est le suivant : je reprends une application Access2003/VBA écrite par une autre personne, qu'il me faut fairte évoluer.

Mon expèrience en développement Access est encore très limitée et j'avoue que je ne suis pas un grand crack du SQL.

Dans le modèle de données il y a ceci (liens entre les tables) :
Chaines métier -> Fonctions -> Applications -> Interruptions
Chaines métier -> Fonctions -> lien fonction interruption -> Interruptions

Je cherche à faire évoluer une requète afin de regrouper mes résultats par rapport aux applications, au lieu de les faire par fonctions.


Code :


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
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
 
 
 
 
SELECT 
   I.Int_ID, 
   PM.ProcM_Dir_id, 
   I.Int_DateHeureDebut, 
   IIf(I.Int_DateHeureFin Is Null,Format(pDateFin,"dd/mm/yyyy"" 23"":""59"":""59"""),
   I.Int_DateHeureFin) AS Int_DateHeureFinX, 
   A.App_ID, 
   A.App_Libelle, 
   F.Fct_ID, 
   F.Fct_Libelle, 
   PM.ProcM_ID, 
   PM.ProcM_Code, 
   PM.ProcM_Libelle, 
   I.Int_Description, 
   I.Int_Inc_Cause, 
   I.Int_Inc_Action, 
   DateDiff("n",I.Int_DateHeureDebut,I.Int_DateHeureFin) AS DureeTotaleMinutes, 
   DateDiff("s",I.Int_DateHeureDebut,I.Int_DateHeureFin) AS DureeTotaleSecondes, 
   Int(DureeTotaleSecondes/(24*60*60)) AS DureeJ, 
   Int((DureeTotaleSecondes-(DureeJ*24*60*60))/(60*60)) AS DureeH, 
   Int((DureeTotaleSecondes-(DureeJ*24*60*60)-(DureeH*60*60))/60) AS DureeM, 
   Int(DureeTotaleSecondes-(DureeJ*24*60*60)-(DureeH*60*60)-(DureeM*60)) AS DureeS
FROM 
   ProcessusMetier AS PM 
      RIGHT JOIN Fonction AS F 
         ON PM.ProcM_ID = F.Fct_ProcM_id, 
   Application AS A 
      RIGHT JOIN (lk_InterruptionFonction AS IntF 
      RIGHT JOIN vw_Int_Periode AS I ON IntF.IF_Int_id = I.Int_ID) 
         ON A.App_ID = I.Int_App_id
WHERE 
   (((PM.ProcM_Dir_id)=[pDirID]))
GROUP BY 
   A.App_Libelle
ORDER BY 
   A.App_Libelle, F.Fct_Id, I.Int_DateHeureDebut;
Quand je lexécute, j'ai "expression de jointure non supportée".

Est ce que quelqu'un pourraît me donner un petit coups de main s'il vous plait ?

Par avance merci.

Marco.