SQL Server - Trigger y Update con subconsulta

 
Vista:
Imágen de perfil de Daniel Gonzalo
Val: 17
Ha aumentado su posición en 2 puestos en SQL Server (en relación al último mes)
Gráfica de SQL Server

Trigger y Update con subconsulta

Publicado por Daniel Gonzalo (3 intervenciones) el 27/11/2020 18:13:29
Buenas tardes y gracias por su atención. Tengo que ejecutar un trigger, cosa a la que no soy muy afecto, y me piden un update a otra tabla que el resultado parte de una subconsulta entre Inserted y otra tabla con valores de donde debo obtener para actualizar el update. La verdad estoy trabado en esa parte y si alguién tiene ganas y tiempo de darle un ojo a la estructura no sintaxis de sql porque, aunque me repito, da los valores que busco, se lo voy a agradecer.
Saludos y gracias.
No tuve tiempo de cambiar

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
29
30
CREATE TRIGGER TR_AmmountPremium
ON Commis_pr -- cuando se inserta en commis_pr actualizo en premmiun
FOR
INSERT
AS
 
DECLARE @sErrorMessage VARCHAR(300)--- variable en caso de error.
 
 
	UPDATE Premium set Premium.nComamou = cp.nAmount WHERE
	(
		SELECT pr.nReceipt, pr.nComamou, cp.nAmount
		FROM Premium pr (NOLOCK)
		INNER JOIN INSERTED I -- registro insertado en insudb.Commiss_pr --
		ON I.nReceipt = pr.nReceipt
		AND I.nDigit = 0 AND I.nPaynumbe = 0
		OUTER APPLY (SELECT SUM(nAmount) nAmount
		FROM Commiss_pr cp (NOLOCK)
		WHERE cp.nReceipt = I.nReceipt
		AND cp.nDigit = 0 AND I.nPaynumbe = 0) AS cp
		WHERE ISNULL(pr.nComamou,0) = 0.00
		AND cp.nAmount <> 0.00 -- el valor de commis_pr
	)
 
	IF @@ERROR > 0
 
 
		set @sErrorMessage='Error, no se pudo actualizar el monto en Premmim.nAmount, por favor avise a su administrador'
		ROLLBACK TRANSACTION
		RAISERROR(@sErrorMessage,1,16)

----------
Gracias por su tiempo y atención.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Daniel Gonzalo
Val: 17
Ha aumentado su posición en 2 puestos en SQL Server (en relación al último mes)
Gráfica de SQL Server

Trigger y Update con subconsulta

Publicado por Daniel Gonzalo (3 intervenciones) el 27/11/2020 18:50:43
Agrego. En el update ese where es correspondiente? tengo la duda si es where o FROM Perdón por esta tontera pero al no tener ambiente donde probarlo. Primer problema, quería saber si la sintaxis era correcta.
Nuevamente gracias.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar