![]() |
---|
CREATE trigger dbo.[TR_MKTLISTLAYOUT_INSERT] on [dbo].[MKTLISTLAYOUT] instead of insert not for replication as set nocount on declare @ID uniqueidentifier; declare @NAME nvarchar(50); declare @NEWNAME nvarchar(50); declare @DESCRIPTION nvarchar(300); declare @SITEID uniqueidentifier; declare @RECORDSOURCEID uniqueidentifier; declare @TYPECODE int; declare @ADDNEWCODETABLEENTRIES bit; declare @ADDEDBYID uniqueidentifier; declare @CHANGEDBYID uniqueidentifier; declare @TS timestamp; -- make sure the name is unique if update([NAME]) begin declare INSERTCURSOR cursor local fast_forward for select i.[ID], i.[NAME], i.[DESCRIPTION], i.[SITEID], i.[RECORDSOURCEID], i.[TYPECODE], i.[ADDNEWCODETABLEENTRIES], i.[ADDEDBYID], i.[CHANGEDBYID] from inserted i; open INSERTCURSOR; fetch next from INSERTCURSOR into @ID, @NAME, @DESCRIPTION, @SITEID, @RECORDSOURCEID, @TYPECODE, @ADDNEWCODETABLEENTRIES, @ADDEDBYID, @CHANGEDBYID; while (@@FETCH_STATUS = 0) begin set @NEWNAME = dbo.[UFN_MKTLISTLAYOUT_GETUNIQUENAME](@ID, @NAME); insert into dbo.[MKTLISTLAYOUT] ( [ID], [NAME], [DESCRIPTION], [SITEID], [RECORDSOURCEID], [TYPECODE], [ADDNEWCODETABLEENTRIES], [ADDEDBYID], [CHANGEDBYID] ) values ( @ID, @NEWNAME, @DESCRIPTION, @SITEID, @RECORDSOURCEID, @TYPECODE, @ADDNEWCODETABLEENTRIES, @ADDEDBYID, @CHANGEDBYID ); fetch next from INSERTCURSOR into @ID, @NAME, @DESCRIPTION, @SITEID, @RECORDSOURCEID, @TYPECODE, @ADDNEWCODETABLEENTRIES, @ADDEDBYID, @CHANGEDBYID; end; close INSERTCURSOR; deallocate INSERTCURSOR; end; |