Bonjour, j'ai une table de correspondance pour les jours ferier, et je recherche le premier jour ouvré a partir d'une date.
Pour tester je recherche le premier jour anterieur a une date ouvré, voici mon code :
Bon, c'est pas tres clair, mais en gros le select me retourn 'O' ou 'N' celon si c'est un jour ouvré ou pas :
Le resultat de la requete retourne :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 declare @STEP int select @STEP = 0 while((select DAT_OPEN_FLG from ID_DAT where COUNTRY='FRA' and DAT_REF = dateadd(day,@STEP,(select EVT_DAT from ID_EVT where EVT_NUM=1887535))) != 'O') begin select DAT_OPEN_FLG from ID_DAT where COUNTRY='FRA' and DAT_REF = dateadd(day,@STEP,(select EVT_DAT from ID_EVT where EVT_NUM=1887535)) select @STEP = @STEP - 1 end
'N', il devrai continuer la boucle, puisque la condition n'est pas vraie...
Pourquoi s'arrete t'il?
PS : Si je met le select de boucle apres le select @STEP = @STEP - 1, il affiche la meme chose!!!!
Merci
Partager