Fejl i trigger
Jeg har lavet den nedenstående trigger. Jeg kan godt lægge den ind på databasen og jeg kan godt køre triggeren, hvis den ikke går ind i if-sætningen, men når den går ind i if-sætningen, så går mit program ned. Er der nogen der kan se hvorfor?CREATE TRIGGER NyAftale ON Agr
FOR INSERT,UPDATE
AS
BEGIN
DECLARE
@tempdato DATETIME,
@temptildato DATETIME,
@tempdatodiff INTEGER,
@tempdatoplus DATETIME,
@aftalenr INTEGER,
@aftaleactno INTEGER,
@fradato INTEGER,
@tildato INTEGER,
@frakl INTEGER,
@tilkl INTEGER,
@aktoernr INTEGER,
@kontaktperson INTEGER,
@beskrivelse CHAR,
@udfoert INTEGER,
@udfoertdato INTEGER,
@gr6 INTEGER,
@gr7 INTEGER
SELECT @aftalenr=AgrNo, @aftaleactno=AgrActNo, @fradato=FrDt, @tildato=ToDt, @frakl=FrTm, @tilkl=ToTm, @aktoernr=ActNo, @kontaktperson=LiaActNo, @beskrivelse=Descr, @udfoert=Fin, @udfoertdato=FinDt, @gr6=Gr6, @gr7=Gr7
FROM inserted
IF (@udfoert = 1) AND (@gr7 = 0) AND (@gr6<>0)
BEGIN
SET @tempdato = CONVERT(datetime, @udfoertdato, 112)
SET @tempdatoplus = DATEADD(d, @gr6, @tempdato)
SET @udfoertdato = CONVERT(integer, @tempdatoplus)
SET @tempdato = CONVERT(datetime, @fradato, 112)
SET @temptildato = CONVERT(datetime, @tildato, 112)
SET @tempdatodiff = DATEDIFF(d, @temptildato, @tempdato)
SET @tempdatoplus = DATEADD(d, @tempdatodiff, @tempdatoplus)
SET @tildato = CONVERT(integer, @tempdatoplus)
SET @aftalenr = @aftalenr + 1
INSERT INTO agr(AgrActNo,AgrNo,FrDt,ToDt,FrTm,ToTm,ActNo,LiaActNo,Descr,Gr6)
values (@aftaleactno,@aftalenr,@udfoertdato,@tildato,@frakl,@tilkl,@aktoernr,@kontaktperson,@beskrivelse,@gr6)
UPDATE agr SET gr7 = 1 WHERE Agr.AgrNo = @aftalenr
END
END