Bonjour à tous,

Je suis totalement novice en la matière mais j'ai un problème pour lequel je n'arrive pas à trouver de solution sur les forum.
J'ai cette requête:
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
 
SELECT   
  $SDBTMP$dbo.R_ActivityDetail.Date AS Jour
 , ISNULL($SDBTMP$dbo.R_ActivityDetail.BeginTime,0) AS Debut
 , ISNULL($SDBTMP$dbo.R_ActivityDetail.Duration,0) AS Duree
 , ISNULL($SDBTMP$dbo.R_ActivityDetail.ActivityType,'0') AS ActivityType
 , ISNULL($SDBTMP$dbo.R_ActivityDetail.DriverCode,'') AS Matricule
 , ISNULL($SDBTMP$dbo.R_ActivityDetail.Identifier,'') AS Identifiant
 , ISNULL($SDBTMP$dbo.R_ActivityDetail.CardNumber,'') AS Carte
 , ISNULL($SDBTMP$dbo.R_ActivityDetail.LastName,'') +' ' + UPPER(LEFT(ISNULL($SDBTMP$dbo.R_ActivityDetail.Name,' '),1) )+'.' as Nom 
 , ISNULL($SDBTMP$dbo.R_ActivityDetail.KmStart,'0') AS kmBegin
 , ISNULL($SDBTMP$dbo.R_ActivityDetail.KmArrived,'0') AS kmEnd
 
 , ISNULL($SDBTMP$dbo.R_ActivityDetail.KmValue,'0') AS km
 , ISNULL($SDBTMP$dbo.R_ActivityDetail.VehicleCode,'') AS VehicleCode
 , ISNULL($SDBTMP$dbo.R_ActivityDetail.VRN,'') AS Immat
 , ISNULL($SDBTMP$dbo.R_ActivityDetail.VIN,'') AS VIN
 , ISNULL($SDBTMP$dbo.R_ActivityDetail.GlossaryCode,'') AS GlossaryCode
 , ISNULL($SDBTMP$dbo.R_ActivityDetail.GlossaryLabel,'') AS GlossaryLabel
 , ISNULL($SDBTMP$dbo.R_ActivityDetail.BeginEndEEC,'') AS BeginEndEEC
 , ISNULL($SDBTMP$dbo.R_ActivityDetail.TravelerCoupure,'') AS TravelerCoupure
 
 
 FROM    $SDBTMP$dbo.R_ActivityDetail 
 INNER JOIN dbo.F_Person ON ($SDBTMP$dbo.R_ActivityDetail.ID_F_Person = dbo.F_Person.PK_FP)
 LEFT OUTER JOIN dbo.F_Enterprise ON dbo.F_Person.ID_FE_Enterprise = dbo.F_Enterprise.PK_FE
 
 WHERE     
 $PK_FENTERPRISE$
 and $PK_FPERSON$
 and $ENVIRONNEMENT_PERSON$dbo.F_Person.PK_FP  
 and $DATEENTRYPERIOD_PERSON$ 
 and $DATELEAVEPERIOD_PERSON$
 and (dbo.F_Person.Inactive = 0)
and (($SDBTMP$dbo.R_ActivityDetail.Date >= CONVERT(DATETIME, '$PARAM_DATE_PERIOD_BEGIN$', 102)) AND ($SDBTMP$dbo.R_ActivityDetail.Date< CONVERT(DATETIME, '$FIELD_PARAM_DATE_PERIOD_END_NEXTDAY$', 102)) )
 
 
 ORDER BY dbo.F_Enterprise.Name, dbo.F_Person.LastName,  $SDBTMP$dbo.R_ActivityDetail.BeginTime

Cette requête me permet d'alimenter en données une table dans un logiciel, cette requête nécessite que je fasse la sélection de la période dans mon logiciel.
je voudrais que cette sélection de période soit automatisée sur la date du jour - 90 jours, la requête est lancée tous les jours pour alimenter un autre logiciel.
En nombre de jours j'ai pu lire que cela pouvait être problématique (mois à 28,30,31 jours), c'est pourquoi je voulais prendre comme critère la date du jour en fin de période est la date du jour - 3 mois pour mon début de période.

La définition de ma période doit se faire ici:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
and (($SDBTMP$dbo.R_ActivityDetail.Date >= CONVERT(DATETIME, '$PARAM_DATE_PERIOD_BEGIN$', 102)) AND ($SDBTMP$dbo.R_ActivityDetail.Date< CONVERT(DATETIME, '$FIELD_PARAM_DATE_PERIOD_END_NEXTDAY$', 102)) )
Mais je seche totalement sur comment réussir à modifier cette période pour qu'elle prenne mais 90 derniers jours ou 3 derniers mois de maniere automatique et plus en passant par mon soft où je dois préciser la période manuellement.

Est-ce que quelqu'un pourrait m'aider? L'informaticien qui a réalisé cette requête n'est plus joignable et je suis dans le caca^^.

Merci d'avance