Bonjour,

Je n'arrive pas à adapter la requête select ci-dessous afin d'effectuer un update de la table w_p_rqtbill
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
 
Select
  IsNull(Sum(Cast(p_rqtpec.RqtPecElapseDel As float) / 60 * dbo.W_CHTX_Tarif(r_wrkobj.ObjInCde, r_adc.SrvcObjRteInCde, p_rqtpec.RqtPecToDte) * IsNull(dbo.r_wrkobj.ObjQty, 1)), 0) As MO_Cout_Autres,
  IsNull(Sum(Cast(p_rqtpec.RqtPecElapseDel As float) / 60 * IsNull(r_wrkobj.ObjQty, 1)), 0) As MO_Tps_Autres
From
  r_wrkobj Right Outer Join
  (p_rqtpec Inner Join
  p_rqt On p_rqtpec.RqtInCde = p_rqt.RqtInCde Inner Join
  r_adc On p_rqt.AdcInCde = r_adc.AdcInCde) On dbo.r_wrkobj.WrkInCde =
    p_rqtpec.WrkInCde Inner Join
  w_p_rqtbill On p_rqt.RqtInCde = w_p_rqtbill.RqtInCde
Where
  p_rqt.RqtDte >= '01/01/2012' And
  p_rqtpec.RqtEndPnt = 1 And
  p_rqt.DstWrkGrpInCde = 32
Group By
  p_rqt.RqtInCde
J'ai tenté plusieurs requêtes update sans résultat probant.
Voici la dernière mouture de ma 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
 
UPDATE w_p_rqtbill
SET w_p_rqtbill.MO_Tps_Autres = (SELECT IsNull(Sum(Cast(p_rqtpec.RqtPecElapseDel As float) / 60 * IsNull(r_wrkobj.ObjQty, 1)), 0)
			FROM
			r_wrkobj Right Outer Join
			(p_rqtpec Inner Join
  			p_rqt On p_rqtpec.RqtInCde = p_rqt.RqtInCde Inner Join
 			r_adc On p_rqt.AdcInCde = r_adc.AdcInCde) On dbo.r_wrkobj.WrkInCde = p_rqtpec.WrkInCde 
			WHERE
  			p_rqt.RqtInCde = w_p_rqtbill.RqtInCde
			GROUP BY p_rqt.RqtInCde),
w_p_rqtbill.MO_Autres = (SELECT IsNull(Sum(Cast(p_rqtpec.RqtPecElapseDel As float) / 60 * dbo.W_CHTX_Tarif(r_wrkobj.ObjInCde, r_adc.SrvcObjRteInCde, p_rqtpec.RqtPecToDte) * IsNull(dbo.r_wrkobj.ObjQty, 1)), 0)
			FROM
			r_wrkobj Right Outer Join
  			(p_rqtpec Inner Join
  			p_rqt On p_rqtpec.RqtInCde = p_rqt.RqtInCde Inner Join
  			r_adc On p_rqt.AdcInCde = r_adc.AdcInCde) On dbo.r_wrkobj.WrkInCde = p_rqtpec.WrkInCde
			WHERE
  			p_rqt.RqtInCde = w_p_rqtbill.RqtInCde
			GROUP BY p_rqt.RqtInCde)
FROM
  p_rqtpec Inner Join
  p_rqt On p_rqtpec.RqtInCde = p_rqt.RqtInCde
WHERE
  p_rqt.RqtInCde = w_p_rqtbill.RqtInCde And
  p_rqt.RqtDte > '01/01/2012' And
  p_rqtpec.RqtEndPnt = 1 And
  p_rqt.DstWrkGrpInCde = 32
Malheureusement la requête update ne met pas à jour toutes les valeurs retournées par ma requête select et, en plus, quand elle met à jour, le coût et le temps insérés ne correspondent pas aux résultat que j'obtiens dans ma requête select

Quelqu'un aurait-il une piste pour m'aider à corriger ma requête update ?

Merci par avance.