Ayuda Script SQL Trigger
Publicado por Emilio Yoshimar Lopez Esponda (2 intervenciones) el 13/05/2014 23:23:08
Hola, solicitud su apoyo para resolver una cuestión que tengo, sucede que necesito establecer un trigger dentro de una tabla que se desencadene al select.
Primero tomo los valores de la tabla inserted que necesito y los meto en variables internas, despues hago la comparacion, pero sucede que necesito meter un UPDATE dentro del resultado de un CASE que me actualice otra tabla, ya busque y busque donde estaría el error que me genera puesto que no me deja compilarlo. Espero me puedan ayudar, les dejo el script. Gracias
Primero tomo los valores de la tabla inserted que necesito y los meto en variables internas, despues hago la comparacion, pero sucede que necesito meter un UPDATE dentro del resultado de un CASE que me actualice otra tabla, ya busque y busque donde estaría el error que me genera puesto que no me deja compilarlo. Espero me puedan ayudar, les dejo el script. Gracias
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
31
32
33
34
35
36
37
38
39
ALTER TRIGGER apertura_de_bulto
ON MOVPROD
AFTER INSERT
AS
BEGIN
DECLARE @tienda AS VARCHAR
DECLARE @producto AS VARCHAR
DECLARE @tipomov AS VARCHAR(3)
SET @tienda = (SELECT TIENDA FROM inserted)
SET @producto = (SELECT PRODUCTO FROM inserted)
SET @tipomov = (SELECT TIPOMOV FROM inserted)
IF @tipomov = '11'
BEGIN
SELECT CASE(@producto)
WHEN 'DCARP25KG'
THEN
UPDATE EXIST
SET EXISTIENDA = EXISTIENDA + 25
WHERE PRODUCTO = 'DCARP'
WHEN 'DCARG25KG'
THEN
UPDATE EXIST
SET EXISTIENDA = EXISTIENDA + 25
WHERE PRODUCTO = 'DCARG'
WHEN 'DCCRP25KG'
THEN
UPDATE EXIST
SET EXISTIENDA = EXISTIENDA + 25
WHERE PRODUCTO = 'DCCRP'
END
ELSE
BEGIN
UPDATE EXIST
SET EXISTIENDA = EXISTIENDA + '1'
WHERE PRODUCTO = 'MA24'
END
END
Valora esta pregunta


0