SQL - Problema con trigger

 
Vista:

Problema con trigger

Publicado por Federico (1 intervención) el 02/12/2020 13:35:11
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
CREATE TRIGGER [dbo].[fechascob]
	ON [dbo].[cob]
	AFTER INSERT, UPDATE
AS
  BEGIN
    IF TRIGGER_NESTLEVEL()>1
	RETURN
	IF imptot >1 AND imptot<1.50 AND tipapa=7 THEN
	INSERT ("codins", "cod", "fechor", "hor", "tipapa", "numapa", "codtur", "num", "imptot", "porimp", "codforpag", "numtarcre", "numcue","impent", "obs", "solcop") INTO cob VALUES (NEW.codins, NEW.cod+5, NEW.fechor, NEW.hor, NEW.tipapa, NEW.numapa, NEW.codtur, NEW.num, imptot+0.60, NEW.porimp, NEW.codforpag, NEW.numtarcre, NEW.numcue, NEW.impent, NEW.obs, NEW.solcop, NEW.codcli, NEW.codop, NEW.anu, NEW.fechorret, NEW.fechoranu);
	ENDIF
    UPDATE cob
  	SET
   		fechor = DATEADD (YEAR, 8, fechor),
  		fechorret = DATEADD (YEAR, 8, fechorret),
  		fechoranu = DATEADD (YEAR, 8, fechoranu)
    WHERE cod = (SELECT cod FROM INSERTED)
 
  END

Me da error en el IF y desconozco la causa, lo que hace es copiar en la misma tabla un registro al insertarlo sumando valores en dos columnas
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 gilman
Val: 153
Ha mantenido su posición en SQL (en relación al último mes)
Gráfica de SQL

Problema con trigger

Publicado por gilman (57 intervenciones) el 03/12/2020 08:52:41
no se que motor de base de datos usas, pero al menos te falta un THEN y algún que otro ; tambien algún ENDIF
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