Bonjour,
je n'arrive à comprendre pourquoi le requete paramétrée suivate ne fonctionne pas:
J'ai compris que c'est l'expression where qui pose problème et que c'est à cause des paramètres :jmin et :jmax que ca ne marche pas , mais je ne comprends pas pourquoi. On ne peut pas paramétrer sur une addition ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 IBquery1.SQL.Clear; IBquery1.SQL.Add('select count(*) as NB_LG_ERR from L_ACHAT'); IBquery1.SQL.Add('join L_BONREC on L_BONREC.LRIDLACHAT=L_ACHAT.LAIDLACHAT'); IBquery1.SQL.Add('join BONREC on BONREC.BOIDREC=L_BONREC.LRIDREC'); IBquery1.SQL.Add('join ACHAT on ACHAT.ACIDACHAT=L_ACHAT.LAIDACHAT'); IBquery1.SQL.Add('where (BONREC.BODATREC >= L_ACHAT.LADLIVMOD + :JMIN) and (BONREC.BODATREC <= L_ACHAT.LADLIVMOD + :JMAX) and (ACHAT.ACDATACHAT between :debut and :fin) and (ACHAT.ACIDFOUR=:IDFOUR)'); IBquery1.ParamByName('debut').AsDate:=JvDatePickerEdit1.Date; IBquery1.ParamByName('fin').AsDate:=JvDatePickerEdit2.Date; IBquery1.ParamByName('idfour').AsInteger:=JvDBLookupEdit1.LookupValue; IBquery1.ParamByName('jmin').AsInteger:=jmini; IBquery1.ParamByName('jmax').AsInteger:=jmaxi; IBquery1.Open;
Cette requete provient d'une procédure stockée où jmin et jmin étaient des paramètres d'entrée.
Cette procédure stockée fonctionne parfaitement d'où mon étonnement !!
cordialement
Partager