Bonjour,
J'ai créer une requête et je veux déclarer des variables pour alléger mon code. J'ai deux cas de variable et qui me donne toujours le même message d'erreur, mais je reçois toujours le message d'erreur suivant : A SELECT statement that assigns a value to a variable must not be combined with data-retrieval operations."
ce que je veux c'est que dans mon select je vois la valeur de mes variables. si je mets seulement @Exchange = (case when OrderHed.RateGrpCode = 'MDS' then OrderHed_ud.ExchRate_Comptable_c else OrderHed.ExchangeRate end) sans le , @exchange, je n'ai pas de message d'erreur, mais je ne vois pas la valeur de ma variable.
------------Premier code --------------
Me retourne le message d'erreur "A SELECT statement that assigns a value to a variable must not be combined with data-retrieval operations."
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 DECLARE @Exchange decimal; select Orderhed.Ordernum, @Exchange = (case when OrderHed.RateGrpCode = 'MDS' then OrderHed_ud.ExchRate_Comptable_c else OrderHed.ExchangeRate end) , @Exchange from erp.OrderHed left join erp.OrderHed_UD on OrderHed_UD.ForeignSysRowID = orderhed.SysRowID
---------------- Deuxième Code
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 DECLARE @Exchange decimal; select Orderhed.Ordernum, orderdtl.orderline, @MiscCharge = CASE WHEN ((SELECT SUM(DocMiscAmt) FROM erp.ordermsc WHERE ordermsc.company = orderdtl.company AND ordermsc.ordernum = orderdtl.ordernum AND ordermsc.orderline = orderdtl.orderline AND (Ordermsc.MiscCode = 'MIST' OR Ordermsc.MiscCode = 'DISM' OR Ordermsc.MiscCode = 'DISP') GROUP BY Ordermsc.Ordernum, OrderMsc.Orderline)) IS NULL THEN 0 ELSE (SELECT SUM(DocMiscAmt) FROM erp.ordermsc WHERE ordermsc.company = orderdtl.company AND ordermsc.ordernum = orderdtl.ordernum AND ordermsc.orderline = orderdtl.orderline AND (Ordermsc.MiscCode = 'MIST' OR Ordermsc.MiscCode = 'DISM' OR Ordermsc.MiscCode = 'DISP') GROUP BY Ordermsc.Ordernum, OrderMsc.Orderline) END, @MiscCharge from erp.OrderHed left join erp.OrderHed_UD on OrderHed_UD.ForeignSysRowID = orderhed.SysRowID left join erp.OrderDtl on orderdtl.Company = orderhed.Company and orderdtl.OrderNum = orderhed.OrderNum
Partager