TR_INVITATION_AUDIT_DELETE

Trigger Definition

/* 
Generated by Blackbaud AppFx Platform
Date:  7/19/2010 6:58:32 PM
Assembly Version:  Blackbaud.AppFx.Platform.SqlClr, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null
Copyright Blackbaud
*/
CREATE TRIGGER dbo.TR_INVITATION_AUDIT_DELETE ON dbo.INVITATION AFTER DELETE NOT FOR REPLICATION
AS 

declare @ChangeAgentID uniqueidentifier
declare @AuditKey uniqueidentifier
declare @AuditDate datetime

set nocount on

--peform the audit
if dbo.UFN_AUDITENABLED('INVITATION') = 1
	begin
	
		-- the audit key is used to associate the rows in the audit table with a single atomic deletion/modification
		-- for a delete, 
		set @AuditKey = NewID()
		set @AuditDate = GetDate()

		--Get the change agent from the CONTEXT_INFO.  If an application wishes to mark a row as deleted by a non-default changeagent then it will have to update the auditrow after the delete using the ID field (where AUDITTYPECODE=2)
		exec dbo.USP_CHANGEAGENT_GETORCREATECHANGEAGENTFROMCONTEXT @ChangeAgentID output

		INSERT INTO dbo.INVITATIONAUDIT(
			AUDITRECORDID, 
			AUDITKEY,
			AUDITCHANGEAGENTID,
			AUDITDATE, 
			AUDITTYPECODE,
			[NAME],
			[EVENTID],
			[BUSINESSPROCESSVIEWID],
			[ADDEDBYID],
			[CHANGEDBYID],
			[DATEADDED],
			[DATECHANGED],
			[DESCRIPTION],
			[MAILDATE],
			[CREATEOUTPUTIDSET],
			[OUTPUTIDSETNAME],
			[OVERWRITEOUTPUTIDSET],
			[OUTPUTIDSETRECORDTYPEID],
			[CUSTOMPARAMETERDATAFORMITEM],
			[CHANNELCODE],
			[CHANNELPREFERENCECODE],
			[MAILPACKAGEID],
			[EMAILPACKAGEID],
			[NAMEFORMATPARAMETERID],
			[ADDRESSPROCESSINGOPTIONID],
			[HOUSEHOLDINGTYPECODE],
			[HOUSEHOLDINGINCLUDEINDIVIDUALSWITHNOHOUSEHOLD],
			[HOUSEHOLDINGINCLUDEHOUSEHOLDSWITHNOMEMBERS],
			[HOUSEHOLDINGONERECORDPERHOUSEHOLD],
			[LABELFILENAME],
			[LABELFILE]
		) 
		SELECT 
			ID,
			@AuditKey,
			@ChangeAgentID,
			@AuditDate,
			2, --Before DELETE
			[NAME],
			[EVENTID],
			[BUSINESSPROCESSVIEWID],
			[ADDEDBYID],
			[CHANGEDBYID],
			[DATEADDED],
			[DATECHANGED],
			[DESCRIPTION],
			[MAILDATE],
			[CREATEOUTPUTIDSET],
			[OUTPUTIDSETNAME],
			[OVERWRITEOUTPUTIDSET],
			[OUTPUTIDSETRECORDTYPEID],
			[CUSTOMPARAMETERDATAFORMITEM],
			[CHANNELCODE],
			[CHANNELPREFERENCECODE],
			[MAILPACKAGEID],
			[EMAILPACKAGEID],
			[NAMEFORMATPARAMETERID],
			[ADDRESSPROCESSINGOPTIONID],
			[HOUSEHOLDINGTYPECODE],
			[HOUSEHOLDINGINCLUDEINDIVIDUALSWITHNOHOUSEHOLD],
			[HOUSEHOLDINGINCLUDEHOUSEHOLDSWITHNOMEMBERS],
			[HOUSEHOLDINGONERECORDPERHOUSEHOLD],
			[LABELFILENAME],
			[LABELFILE]

		FROM DELETED

		
	end