Simplification d'une requête SQL
Bonjour, j'ai une requête qui semble trop compliqué pour access. Il me dit que je dois simplifier l'expression ( en déclarant des variables par exemple ), mais je ne sais pas comment faire.
Code:
1 2 3 4 5
|
SELECT T_Facture.NoClient, Month([T_Facture].[DateFacture]) AS Expr1, Sum(T_Facture.TotalFacture) AS TotalMoisPrecedent
FROM T_Facture
GROUP BY T_Facture.NoClient, Month([T_Facture].[DateFacture])
HAVING (((Month([T_Facture].[DateFacture]))<=IIf(Month([Formulaires].[F_ListePaiement].[Mois]) Is Not Null,Month(DateAdd("d",-(Day([Formulaires].[F_ListePaiement].[Mois])+1),[Formulaires].[F_ListePaiement].[Mois])),Month([T_Facture].[DateFacture])))); |
Ma requête fonctionne très bien lorsque je rentre une date ( autrement dit, toute la partie DateAdd... est bien exécutée.) Mais il n'arrive pas à faire la dernière partie de mon iif ( qui intervient lorsque je n'entre pas de date )
Lorsque je dis, entrer une date, c'est seulment pour mes tests. Dans le code, il s'agit de [Formulaires].[F_ListePaiement].[Mois] qui correspond à une date provenant d'un formulaire.
Comment faire ?
http://smileys.sur-la-toile.com/sign...1587-final.gif
T'es Un Génie!!!!!!!!!!!!!!!!!!!!!Ça marche!