Bonjour à tous.

Voilà j'ai un soucis dans SQL SERVER 2000 version 8.

J'ai mon n° de semaine qui change à partir du mercredi.
Je lance une requête qui me dit que la semaine en cours est la semaine 5 et à partir de mercredi on passe en semaine 6.
Alors que je voudrais que mon n° de semaine change dès le lundi.

Quelqu'un saurait-il d'où cela peut provenir ?

Ci-joint une partie du code SQL utilisé.

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
select "DEPCOM"."Département Commercial"+N' '+"DEPCOM"."Libellé 
Département Commercial" AS "C0", CASE WHEN DATEDIFF(DY,DATEADD(DY,3
,DATEADD(YY,1,DATENAME(YY,DATEADD( DAY, -3, getdate() )))),DATEADD( DAY, -3, getdate() ))+((DATEPART(DW,DATEADD(DY,3,DATEADD(YY,1,DATENAME(YY,DATEADD( DAY, -3, getdate() )))))+5-@@DATEFIRST)% 7+7)% 7 >=0 THEN 1 WHEN DATEDIFF(DY,DATEADD(DY,3,DATENAME(YY,DATEADD( DAY, -3, getdate() ))),DATEADD( DAY, -3, getdate() ))+((DATEPART(DW,DATEADD(DY,3,DATENAME(YY,DATEADD( DAY, -3, getdate() ))))+5-@@DATEFIRST)% 7+7)% 7 >=0 THEN (DATEDIFF(DY,DATEADD(DY,3
,DATENAME(YY,DATEADD( DAY, -3, getdate() ))),DATEADD( DAY, -3, getdate() ))+((DATEPART(DW,DATEADD(DY,3,DATENAME(YY,DATEADD( DAY, -3, getdate() ))))+5-@@DATEFIRST)% 7+7)% 7)/7+1 ELSE (DATEDIFF(DY,DATEADD(DY,3,DATEADD(YY,-1,DATENAME(YY,DATEADD( DAY, -3, getdate() )))),DATEADD( DAY, -3, getdate() ))+((DATEPART(DW,DATEADD(DY,3,DATEADD(YY,-1,DATENAME(YY,DATEADD( DAY, -3, getdate() )))))+5-@@DATEFIRST)% 7+7)% 7)/7+1 END AS "C1", CASE WHEN DATEDIFF(DY,DATEADD(DY,3,DATEADD(YY,1,DATENAME(YY,getdate()))),getdate())+((DATEPART(DW,DATEADD(DY,3,DATEADD(YY,1,DATENAME(YY,getdate()))))+5-@@DATEFIRST)% 7+7)% 7 >=0 THEN 1 WHEN DATEDIFF(DY,DATEADD(DY,3,DATENAME(YY,getdate())),getdate())+((DATEPART(DW,DATEADD(DY,3,DATENAME(YY,getdate())))+5-@@DATEFIRST)% 7+7)% 7 >=0 THEN (DATEDIFF(DY,DATEADD(DY,3,DATENAME(YY,getdate())),getdate())+((DATEPART(DW,DATEADD(DY,3,DATENAME(YY,getdate())))+5-@@DATEFIRST)% 7+7)% 7)/7+1 ELSE (DATEDIFF(DY,DATEADD(DY,3,DATEADD(YY,-1,DATENAME(YY,getdate()))),getdate())+((DATEPART(DW,DATEADD(DY,3,DATEADD(YY,-1,DATENAME(YY,getdate()))))+5-@@DATEFIRST)% 7+7)% 7)/7+1 END AS "C2", getdate() AS "C3", DATEADD( DAY, -3, getdate() )