IF EXISTS (SELECT * FROM dbo.SysObjects WHERE id = object_id(N'dbo.AUDIT_del_Reservations') AND OBJECTPROPERTY(id, N'IsTrigger') = 1) DROP TRIGGER dbo.AUDIT_del_Reservations 
GO
CREATE TRIGGER [dbo].[AUDIT_del_Reservations]
ON [dbo].[Reservations] FOR DELETE NOT FOR REPLICATION AS
BEGIN
	

	DECLARE 
		@IDENTITY_SAVE				varchar(50),
		@AUDIT_LOG_TRANSACTION_ID		Int,
		@PRIM_KEY				nvarchar(4000),
 		@ROWS_COUNT				int,
		@FK_UserIdNumber INT,
		@FK_CashBox INT,
		@ProgramPart SMALLINT,
		@TerminalName VARCHAR(50),
		@SystemDateStr VARCHAR(8),
		@SystemDateTime DATETIME

	SET NOCOUNT ON

	Select @ROWS_COUNT=count(*) from deleted
	Set @IDENTITY_SAVE = CAST(IsNull(@@IDENTITY,1) AS varchar(50))

    SELECT TOP 1 @FK_UserIdNumber = FK_UserIdNumber,
	@FK_CashBox = FK_CashBox,
	@ProgramPart = ProgramPart,
	@TerminalName = TerminalName
	FROM PersonnelLogInfo WITH (NOLOCK)
	WHERE spid = @@spid 
	ORDER BY CreateDate DESC

	IF ISNULL(@FK_UserIdNumber, 0) = 0
	  SET @FK_UserIdNumber = 1
	IF ISNULL(@FK_CashBox, -1) <= 0
	  SET @FK_CashBox = -1
	IF ISNULL(@ProgramPart, -1) <= 0
	  SET @ProgramPart = 14 -- ppUnknown from SystemAll
	IF ISNULL(@TerminalName, '') = ''
	  SET @TerminalName = 'Unknown'

    SELECT @SystemDateStr = SystemDate FROM System WITH (NOLOCK) WHERE Number = 1
    SET @SystemDateTime = CONVERT(DATETIME, @SystemDateStr + ' ' + CONVERT(CHAR(8), CURRENT_TIMESTAMP, 108))

	INSERT INTO dbo.AUDIT_LOG_TRANSACTIONS
	(
		TABLE_NAME,
		TABLE_SCHEMA,
		AUDIT_ACTION_ID,
		HOST_NAME,
		APP_NAME,
		MODIFIED_BY,
		MODIFIED_DATE,
		AFFECTED_ROWS,
		FK_UserIdNumber,
		FK_CashBox,
		ProgramPart,
		TerminalName,
		RealDateTime
	)
	values(
		'Reservations',
		'dbo',
		3,	--	ACTION ID For DELETE
		CASE 
		  WHEN LEN(HOST_NAME()) < 1 THEN ' '
		  ELSE HOST_NAME()
		END,
		CASE 
		  WHEN LEN(APP_NAME()) < 1 THEN ' '
		  ELSE APP_NAME()
		END,
		SUSER_SNAME(),
		@SystemDateTime,
		@ROWS_COUNT,
		@FK_UserIdNumber,
		@FK_CashBox,
		@ProgramPart,
		@TerminalName,
		GETDATE()
	)
	
	Set @AUDIT_LOG_TRANSACTION_ID = SCOPE_IDENTITY()
	

	INSERT INTO dbo.AUDIT_LOG_DATA
	(
		AUDIT_LOG_TRANSACTION_ID,
		PRIMARY_KEY_DATA,
		COL_NAME,
		OLD_VALUE_LONG,
		DATA_TYPE
		, KEY1, KEY2
	)
	SELECT
		@AUDIT_LOG_TRANSACTION_ID,
		convert(nvarchar(1500), IsNull('[ReferenceNumber]='+CONVERT(nvarchar(4000), OLD.[ReferenceNumber], 0), '[ReferenceNumber] Is Null') + ' AND ' + IsNull('[GuestNumber]='+CONVERT(nvarchar(4000), OLD.[GuestNumber], 0), '[GuestNumber] Is Null')),
		'Status',
		CONVERT(nvarchar(4000), OLD.[Status], 0),
		'A'
		,  CONVERT(nvarchar(500), CONVERT(nvarchar(4000), OLD.[ReferenceNumber], 0)),  CONVERT(nvarchar(500), CONVERT(nvarchar(4000), OLD.[GuestNumber], 0))
	FROM deleted OLD
	WHERE
		OLD.[Status] Is Not Null

	INSERT INTO dbo.AUDIT_LOG_DATA
	(
		AUDIT_LOG_TRANSACTION_ID,
		PRIMARY_KEY_DATA,
		COL_NAME,
		OLD_VALUE_LONG,
		DATA_TYPE
		, KEY1, KEY2
	)
	SELECT
		@AUDIT_LOG_TRANSACTION_ID,
		convert(nvarchar(1500), IsNull('[ReferenceNumber]='+CONVERT(nvarchar(4000), OLD.[ReferenceNumber], 0), '[ReferenceNumber] Is Null') + ' AND ' + IsNull('[GuestNumber]='+CONVERT(nvarchar(4000), OLD.[GuestNumber], 0), '[GuestNumber] Is Null')),
		'ArrivalDate',
		CONVERT(nvarchar(4000), OLD.[ArrivalDate], 0),
		'A'
		,  CONVERT(nvarchar(500), CONVERT(nvarchar(4000), OLD.[ReferenceNumber], 0)),  CONVERT(nvarchar(500), CONVERT(nvarchar(4000), OLD.[GuestNumber], 0))
	FROM deleted OLD
	WHERE
		OLD.[ArrivalDate] Is Not Null

	INSERT INTO dbo.AUDIT_LOG_DATA
	(
		AUDIT_LOG_TRANSACTION_ID,
		PRIMARY_KEY_DATA,
		COL_NAME,
		OLD_VALUE_LONG,
		DATA_TYPE
		, KEY1, KEY2
	)
	SELECT
		@AUDIT_LOG_TRANSACTION_ID,
		convert(nvarchar(1500), IsNull('[ReferenceNumber]='+CONVERT(nvarchar(4000), OLD.[ReferenceNumber], 0), '[ReferenceNumber] Is Null') + ' AND ' + IsNull('[GuestNumber]='+CONVERT(nvarchar(4000), OLD.[GuestNumber], 0), '[GuestNumber] Is Null')),
		'ArrivalTime',
		CONVERT(nvarchar(4000), OLD.[ArrivalTime], 0),
		'A'
		,  CONVERT(nvarchar(500), CONVERT(nvarchar(4000), OLD.[ReferenceNumber], 0)),  CONVERT(nvarchar(500), CONVERT(nvarchar(4000), OLD.[GuestNumber], 0))
	FROM deleted OLD
	WHERE
		OLD.[ArrivalTime] Is Not Null

	INSERT INTO dbo.AUDIT_LOG_DATA
	(
		AUDIT_LOG_TRANSACTION_ID,
		PRIMARY_KEY_DATA,
		COL_NAME,
		OLD_VALUE_LONG,
		DATA_TYPE
		, KEY1, KEY2
	)
	SELECT
		@AUDIT_LOG_TRANSACTION_ID,
		convert(nvarchar(1500), IsNull('[ReferenceNumber]='+CONVERT(nvarchar(4000), OLD.[ReferenceNumber], 0), '[ReferenceNumber] Is Null') + ' AND ' + IsNull('[GuestNumber]='+CONVERT(nvarchar(4000), OLD.[GuestNumber], 0), '[GuestNumber] Is Null')),
		'DepartureDate',
		CONVERT(nvarchar(4000), OLD.[DepartureDate], 0),
		'A'
		,  CONVERT(nvarchar(500), CONVERT(nvarchar(4000), OLD.[ReferenceNumber], 0)),  CONVERT(nvarchar(500), CONVERT(nvarchar(4000), OLD.[GuestNumber], 0))
	FROM deleted OLD
	WHERE
		OLD.[DepartureDate] Is Not Null

	INSERT INTO dbo.AUDIT_LOG_DATA
	(
		AUDIT_LOG_TRANSACTION_ID,
		PRIMARY_KEY_DATA,
		COL_NAME,
		OLD_VALUE_LONG,
		DATA_TYPE
		, KEY1, KEY2
	)
	SELECT
		@AUDIT_LOG_TRANSACTION_ID,
		convert(nvarchar(1500), IsNull('[ReferenceNumber]='+CONVERT(nvarchar(4000), OLD.[ReferenceNumber], 0), '[ReferenceNumber] Is Null') + ' AND ' + IsNull('[GuestNumber]='+CONVERT(nvarchar(4000), OLD.[GuestNumber], 0), '[GuestNumber] Is Null')),
		'DepartureTime',
		CONVERT(nvarchar(4000), OLD.[DepartureTime], 0),
		'A'
		,  CONVERT(nvarchar(500), CONVERT(nvarchar(4000), OLD.[ReferenceNumber], 0)),  CONVERT(nvarchar(500), CONVERT(nvarchar(4000), OLD.[GuestNumber], 0))
	FROM deleted OLD
	WHERE
		OLD.[DepartureTime] Is Not Null

	INSERT INTO dbo.AUDIT_LOG_DATA
	(
		AUDIT_LOG_TRANSACTION_ID,
		PRIMARY_KEY_DATA,
		COL_NAME,
		OLD_VALUE_LONG,
		DATA_TYPE
		, KEY1, KEY2
	)
	SELECT
		@AUDIT_LOG_TRANSACTION_ID,
		convert(nvarchar(1500), IsNull('[ReferenceNumber]='+CONVERT(nvarchar(4000), OLD.[ReferenceNumber], 0), '[ReferenceNumber] Is Null') + ' AND ' + IsNull('[GuestNumber]='+CONVERT(nvarchar(4000), OLD.[GuestNumber], 0), '[GuestNumber] Is Null')),
		'ProductNumber',
		CONVERT(nvarchar(4000), OLD.[ProductNumber], 0),
		'A'
		,  CONVERT(nvarchar(500), CONVERT(nvarchar(4000), OLD.[ReferenceNumber], 0)),  CONVERT(nvarchar(500), CONVERT(nvarchar(4000), OLD.[GuestNumber], 0))
	FROM deleted OLD
	WHERE
		OLD.[ProductNumber] Is Not Null

	INSERT INTO dbo.AUDIT_LOG_DATA
	(
		AUDIT_LOG_TRANSACTION_ID,
		PRIMARY_KEY_DATA,
		COL_NAME,
		OLD_VALUE_LONG,
		DATA_TYPE
		, KEY1, KEY2
	)
	SELECT
		@AUDIT_LOG_TRANSACTION_ID,
		convert(nvarchar(1500), IsNull('[ReferenceNumber]='+CONVERT(nvarchar(4000), OLD.[ReferenceNumber], 0), '[ReferenceNumber] Is Null') + ' AND ' + IsNull('[GuestNumber]='+CONVERT(nvarchar(4000), OLD.[GuestNumber], 0), '[GuestNumber] Is Null')),
		'ProductNumber2',
		CONVERT(nvarchar(4000), OLD.[ProductNumber2], 0),
		'A'
		,  CONVERT(nvarchar(500), CONVERT(nvarchar(4000), OLD.[ReferenceNumber], 0)),  CONVERT(nvarchar(500), CONVERT(nvarchar(4000), OLD.[GuestNumber], 0))
	FROM deleted OLD
	WHERE
		OLD.[ProductNumber2] Is Not Null

	INSERT INTO dbo.AUDIT_LOG_DATA
	(
		AUDIT_LOG_TRANSACTION_ID,
		PRIMARY_KEY_DATA,
		COL_NAME,
		OLD_VALUE_LONG,
		DATA_TYPE
		, KEY1, KEY2
	)
	SELECT
		@AUDIT_LOG_TRANSACTION_ID,
		convert(nvarchar(1500), IsNull('[ReferenceNumber]='+CONVERT(nvarchar(4000), OLD.[ReferenceNumber], 0), '[ReferenceNumber] Is Null') + ' AND ' + IsNull('[GuestNumber]='+CONVERT(nvarchar(4000), OLD.[GuestNumber], 0), '[GuestNumber] Is Null')),
		'ProductNumber3',
		CONVERT(nvarchar(4000), OLD.[ProductNumber3], 0),
		'A'
		,  CONVERT(nvarchar(500), CONVERT(nvarchar(4000), OLD.[ReferenceNumber], 0)),  CONVERT(nvarchar(500), CONVERT(nvarchar(4000), OLD.[GuestNumber], 0))
	FROM deleted OLD
	WHERE
		OLD.[ProductNumber3] Is Not Null

	INSERT INTO dbo.AUDIT_LOG_DATA
	(
		AUDIT_LOG_TRANSACTION_ID,
		PRIMARY_KEY_DATA,
		COL_NAME,
		OLD_VALUE_LONG,
		DATA_TYPE
		, KEY1, KEY2
	)
	SELECT
		@AUDIT_LOG_TRANSACTION_ID,
		convert(nvarchar(1500), IsNull('[ReferenceNumber]='+CONVERT(nvarchar(4000), OLD.[ReferenceNumber], 0), '[ReferenceNumber] Is Null') + ' AND ' + IsNull('[GuestNumber]='+CONVERT(nvarchar(4000), OLD.[GuestNumber], 0), '[GuestNumber] Is Null')),
		'ProductNumber4',
		CONVERT(nvarchar(4000), OLD.[ProductNumber4], 0),
		'A'
		,  CONVERT(nvarchar(500), CONVERT(nvarchar(4000), OLD.[ReferenceNumber], 0)),  CONVERT(nvarchar(500), CONVERT(nvarchar(4000), OLD.[GuestNumber], 0))
	FROM deleted OLD
	WHERE
		OLD.[ProductNumber4] Is Not Null

	INSERT INTO dbo.AUDIT_LOG_DATA
	(
		AUDIT_LOG_TRANSACTION_ID,
		PRIMARY_KEY_DATA,
		COL_NAME,
		OLD_VALUE_LONG,
		DATA_TYPE
		, KEY1, KEY2
	)
	SELECT
		@AUDIT_LOG_TRANSACTION_ID,
		convert(nvarchar(1500), IsNull('[ReferenceNumber]='+CONVERT(nvarchar(4000), OLD.[ReferenceNumber], 0), '[ReferenceNumber] Is Null') + ' AND ' + IsNull('[GuestNumber]='+CONVERT(nvarchar(4000), OLD.[GuestNumber], 0), '[GuestNumber] Is Null')),
		'Price',
		CONVERT(nvarchar(4000), OLD.[Price], 2),
		'A'
		,  CONVERT(nvarchar(500), CONVERT(nvarchar(4000), OLD.[ReferenceNumber], 0)),  CONVERT(nvarchar(500), CONVERT(nvarchar(4000), OLD.[GuestNumber], 0))
	FROM deleted OLD
	WHERE
		OLD.[Price] Is Not Null

	INSERT INTO dbo.AUDIT_LOG_DATA
	(
		AUDIT_LOG_TRANSACTION_ID,
		PRIMARY_KEY_DATA,
		COL_NAME,
		OLD_VALUE_LONG,
		DATA_TYPE
		, KEY1, KEY2
	)
	SELECT
		@AUDIT_LOG_TRANSACTION_ID,
		convert(nvarchar(1500), IsNull('[ReferenceNumber]='+CONVERT(nvarchar(4000), OLD.[ReferenceNumber], 0), '[ReferenceNumber] Is Null') + ' AND ' + IsNull('[GuestNumber]='+CONVERT(nvarchar(4000), OLD.[GuestNumber], 0), '[GuestNumber] Is Null')),
		'TotalPrice',
		CONVERT(nvarchar(4000), OLD.[TotalPrice], 2),
		'A'
		,  CONVERT(nvarchar(500), CONVERT(nvarchar(4000), OLD.[ReferenceNumber], 0)),  CONVERT(nvarchar(500), CONVERT(nvarchar(4000), OLD.[GuestNumber], 0))
	FROM deleted OLD
	WHERE
		OLD.[TotalPrice] Is Not Null

	INSERT INTO dbo.AUDIT_LOG_DATA
	(
		AUDIT_LOG_TRANSACTION_ID,
		PRIMARY_KEY_DATA,
		COL_NAME,
		OLD_VALUE_LONG,
		DATA_TYPE
		, KEY1, KEY2
	)
	SELECT
		@AUDIT_LOG_TRANSACTION_ID,
		convert(nvarchar(1500), IsNull('[ReferenceNumber]='+CONVERT(nvarchar(4000), OLD.[ReferenceNumber], 0), '[ReferenceNumber] Is Null') + ' AND ' + IsNull('[GuestNumber]='+CONVERT(nvarchar(4000), OLD.[GuestNumber], 0), '[GuestNumber] Is Null')),
		'PriceOverwritten',
		CONVERT(nvarchar(4000), OLD.[PriceOverwritten], 0),
		'A'
		,  CONVERT(nvarchar(500), CONVERT(nvarchar(4000), OLD.[ReferenceNumber], 0)),  CONVERT(nvarchar(500), CONVERT(nvarchar(4000), OLD.[GuestNumber], 0))
	FROM deleted OLD
	WHERE
		OLD.[PriceOverwritten] Is Not Null

	INSERT INTO dbo.AUDIT_LOG_DATA
	(
		AUDIT_LOG_TRANSACTION_ID,
		PRIMARY_KEY_DATA,
		COL_NAME,
		OLD_VALUE_LONG,
		DATA_TYPE
		, KEY1, KEY2
	)
	SELECT
		@AUDIT_LOG_TRANSACTION_ID,
		convert(nvarchar(1500), IsNull('[ReferenceNumber]='+CONVERT(nvarchar(4000), OLD.[ReferenceNumber], 0), '[ReferenceNumber] Is Null') + ' AND ' + IsNull('[GuestNumber]='+CONVERT(nvarchar(4000), OLD.[GuestNumber], 0), '[GuestNumber] Is Null')),
		'PriceOverwritten2',
		CONVERT(nvarchar(4000), OLD.[PriceOverwritten2], 0),
		'A'
		,  CONVERT(nvarchar(500), CONVERT(nvarchar(4000), OLD.[ReferenceNumber], 0)),  CONVERT(nvarchar(500), CONVERT(nvarchar(4000), OLD.[GuestNumber], 0))
	FROM deleted OLD
	WHERE
		OLD.[PriceOverwritten2] Is Not Null

	INSERT INTO dbo.AUDIT_LOG_DATA
	(
		AUDIT_LOG_TRANSACTION_ID,
		PRIMARY_KEY_DATA,
		COL_NAME,
		OLD_VALUE_LONG,
		DATA_TYPE
		, KEY1, KEY2
	)
	SELECT
		@AUDIT_LOG_TRANSACTION_ID,
		convert(nvarchar(1500), IsNull('[ReferenceNumber]='+CONVERT(nvarchar(4000), OLD.[ReferenceNumber], 0), '[ReferenceNumber] Is Null') + ' AND ' + IsNull('[GuestNumber]='+CONVERT(nvarchar(4000), OLD.[GuestNumber], 0), '[GuestNumber] Is Null')),
		'PriceOverwritten3',
		CONVERT(nvarchar(4000), OLD.[PriceOverwritten3], 0),
		'A'
		,  CONVERT(nvarchar(500), CONVERT(nvarchar(4000), OLD.[ReferenceNumber], 0)),  CONVERT(nvarchar(500), CONVERT(nvarchar(4000), OLD.[GuestNumber], 0))
	FROM deleted OLD
	WHERE
		OLD.[PriceOverwritten3] Is Not Null

	INSERT INTO dbo.AUDIT_LOG_DATA
	(
		AUDIT_LOG_TRANSACTION_ID,
		PRIMARY_KEY_DATA,
		COL_NAME,
		OLD_VALUE_LONG,
		DATA_TYPE
		, KEY1, KEY2
	)
	SELECT
		@AUDIT_LOG_TRANSACTION_ID,
		convert(nvarchar(1500), IsNull('[ReferenceNumber]='+CONVERT(nvarchar(4000), OLD.[ReferenceNumber], 0), '[ReferenceNumber] Is Null') + ' AND ' + IsNull('[GuestNumber]='+CONVERT(nvarchar(4000), OLD.[GuestNumber], 0), '[GuestNumber] Is Null')),
		'PriceOverwritten4',
		CONVERT(nvarchar(4000), OLD.[PriceOverwritten4], 0),
		'A'
		,  CONVERT(nvarchar(500), CONVERT(nvarchar(4000), OLD.[ReferenceNumber], 0)),  CONVERT(nvarchar(500), CONVERT(nvarchar(4000), OLD.[GuestNumber], 0))
	FROM deleted OLD
	WHERE
		OLD.[PriceOverwritten4] Is Not Null

	INSERT INTO dbo.AUDIT_LOG_DATA
	(
		AUDIT_LOG_TRANSACTION_ID,
		PRIMARY_KEY_DATA,
		COL_NAME,
		OLD_VALUE_LONG,
		DATA_TYPE
		, KEY1, KEY2
	)
	SELECT
		@AUDIT_LOG_TRANSACTION_ID,
		convert(nvarchar(1500), IsNull('[ReferenceNumber]='+CONVERT(nvarchar(4000), OLD.[ReferenceNumber], 0), '[ReferenceNumber] Is Null') + ' AND ' + IsNull('[GuestNumber]='+CONVERT(nvarchar(4000), OLD.[GuestNumber], 0), '[GuestNumber] Is Null')),
		'FirstPrice1',
		CONVERT(nvarchar(4000), OLD.[FirstPrice1], 2),
		'A'
		,  CONVERT(nvarchar(500), CONVERT(nvarchar(4000), OLD.[ReferenceNumber], 0)),  CONVERT(nvarchar(500), CONVERT(nvarchar(4000), OLD.[GuestNumber], 0))
	FROM deleted OLD
	WHERE
		OLD.[FirstPrice1] Is Not Null

	INSERT INTO dbo.AUDIT_LOG_DATA
	(
		AUDIT_LOG_TRANSACTION_ID,
		PRIMARY_KEY_DATA,
		COL_NAME,
		OLD_VALUE_LONG,
		DATA_TYPE
		, KEY1, KEY2
	)
	SELECT
		@AUDIT_LOG_TRANSACTION_ID,
		convert(nvarchar(1500), IsNull('[ReferenceNumber]='+CONVERT(nvarchar(4000), OLD.[ReferenceNumber], 0), '[ReferenceNumber] Is Null') + ' AND ' + IsNull('[GuestNumber]='+CONVERT(nvarchar(4000), OLD.[GuestNumber], 0), '[GuestNumber] Is Null')),
		'FirstPrice2',
		CONVERT(nvarchar(4000), OLD.[FirstPrice2], 2),
		'A'
		,  CONVERT(nvarchar(500), CONVERT(nvarchar(4000), OLD.[ReferenceNumber], 0)),  CONVERT(nvarchar(500), CONVERT(nvarchar(4000), OLD.[GuestNumber], 0))
	FROM deleted OLD
	WHERE
		OLD.[FirstPrice2] Is Not Null

	INSERT INTO dbo.AUDIT_LOG_DATA
	(
		AUDIT_LOG_TRANSACTION_ID,
		PRIMARY_KEY_DATA,
		COL_NAME,
		OLD_VALUE_LONG,
		DATA_TYPE
		, KEY1, KEY2
	)
	SELECT
		@AUDIT_LOG_TRANSACTION_ID,
		convert(nvarchar(1500), IsNull('[ReferenceNumber]='+CONVERT(nvarchar(4000), OLD.[ReferenceNumber], 0), '[ReferenceNumber] Is Null') + ' AND ' + IsNull('[GuestNumber]='+CONVERT(nvarchar(4000), OLD.[GuestNumber], 0), '[GuestNumber] Is Null')),
		'FirstPrice3',
		CONVERT(nvarchar(4000), OLD.[FirstPrice3], 2),
		'A'
		,  CONVERT(nvarchar(500), CONVERT(nvarchar(4000), OLD.[ReferenceNumber], 0)),  CONVERT(nvarchar(500), CONVERT(nvarchar(4000), OLD.[GuestNumber], 0))
	FROM deleted OLD
	WHERE
		OLD.[FirstPrice3] Is Not Null

	INSERT INTO dbo.AUDIT_LOG_DATA
	(
		AUDIT_LOG_TRANSACTION_ID,
		PRIMARY_KEY_DATA,
		COL_NAME,
		OLD_VALUE_LONG,
		DATA_TYPE
		, KEY1, KEY2
	)
	SELECT
		@AUDIT_LOG_TRANSACTION_ID,
		convert(nvarchar(1500), IsNull('[ReferenceNumber]='+CONVERT(nvarchar(4000), OLD.[ReferenceNumber], 0), '[ReferenceNumber] Is Null') + ' AND ' + IsNull('[GuestNumber]='+CONVERT(nvarchar(4000), OLD.[GuestNumber], 0), '[GuestNumber] Is Null')),
		'FirstPrice4',
		CONVERT(nvarchar(4000), OLD.[FirstPrice4], 2),
		'A'
		,  CONVERT(nvarchar(500), CONVERT(nvarchar(4000), OLD.[ReferenceNumber], 0)),  CONVERT(nvarchar(500), CONVERT(nvarchar(4000), OLD.[GuestNumber], 0))
	FROM deleted OLD
	WHERE
		OLD.[FirstPrice4] Is Not Null

	INSERT INTO dbo.AUDIT_LOG_DATA
	(
		AUDIT_LOG_TRANSACTION_ID,
		PRIMARY_KEY_DATA,
		COL_NAME,
		OLD_VALUE_LONG,
		DATA_TYPE
		, KEY1, KEY2
	)
	SELECT
		@AUDIT_LOG_TRANSACTION_ID,
		convert(nvarchar(1500), IsNull('[ReferenceNumber]='+CONVERT(nvarchar(4000), OLD.[ReferenceNumber], 0), '[ReferenceNumber] Is Null') + ' AND ' + IsNull('[GuestNumber]='+CONVERT(nvarchar(4000), OLD.[GuestNumber], 0), '[GuestNumber] Is Null')),
		'TotalPrice1',
		CONVERT(nvarchar(4000), OLD.[TotalPrice1], 2),
		'A'
		,  CONVERT(nvarchar(500), CONVERT(nvarchar(4000), OLD.[ReferenceNumber], 0)),  CONVERT(nvarchar(500), CONVERT(nvarchar(4000), OLD.[GuestNumber], 0))
	FROM deleted OLD
	WHERE
		OLD.[TotalPrice1] Is Not Null

	INSERT INTO dbo.AUDIT_LOG_DATA
	(
		AUDIT_LOG_TRANSACTION_ID,
		PRIMARY_KEY_DATA,
		COL_NAME,
		OLD_VALUE_LONG,
		DATA_TYPE
		, KEY1, KEY2
	)
	SELECT
		@AUDIT_LOG_TRANSACTION_ID,
		convert(nvarchar(1500), IsNull('[ReferenceNumber]='+CONVERT(nvarchar(4000), OLD.[ReferenceNumber], 0), '[ReferenceNumber] Is Null') + ' AND ' + IsNull('[GuestNumber]='+CONVERT(nvarchar(4000), OLD.[GuestNumber], 0), '[GuestNumber] Is Null')),
		'TotalPrice2',
		CONVERT(nvarchar(4000), OLD.[TotalPrice2], 2),
		'A'
		,  CONVERT(nvarchar(500), CONVERT(nvarchar(4000), OLD.[ReferenceNumber], 0)),  CONVERT(nvarchar(500), CONVERT(nvarchar(4000), OLD.[GuestNumber], 0))
	FROM deleted OLD
	WHERE
		OLD.[TotalPrice2] Is Not Null

	INSERT INTO dbo.AUDIT_LOG_DATA
	(
		AUDIT_LOG_TRANSACTION_ID,
		PRIMARY_KEY_DATA,
		COL_NAME,
		OLD_VALUE_LONG,
		DATA_TYPE
		, KEY1, KEY2
	)
	SELECT
		@AUDIT_LOG_TRANSACTION_ID,
		convert(nvarchar(1500), IsNull('[ReferenceNumber]='+CONVERT(nvarchar(4000), OLD.[ReferenceNumber], 0), '[ReferenceNumber] Is Null') + ' AND ' + IsNull('[GuestNumber]='+CONVERT(nvarchar(4000), OLD.[GuestNumber], 0), '[GuestNumber] Is Null')),
		'TotalPrice3',
		CONVERT(nvarchar(4000), OLD.[TotalPrice3], 2),
		'A'
		,  CONVERT(nvarchar(500), CONVERT(nvarchar(4000), OLD.[ReferenceNumber], 0)),  CONVERT(nvarchar(500), CONVERT(nvarchar(4000), OLD.[GuestNumber], 0))
	FROM deleted OLD
	WHERE
		OLD.[TotalPrice3] Is Not Null

	INSERT INTO dbo.AUDIT_LOG_DATA
	(
		AUDIT_LOG_TRANSACTION_ID,
		PRIMARY_KEY_DATA,
		COL_NAME,
		OLD_VALUE_LONG,
		DATA_TYPE
		, KEY1, KEY2
	)
	SELECT
		@AUDIT_LOG_TRANSACTION_ID,
		convert(nvarchar(1500), IsNull('[ReferenceNumber]='+CONVERT(nvarchar(4000), OLD.[ReferenceNumber], 0), '[ReferenceNumber] Is Null') + ' AND ' + IsNull('[GuestNumber]='+CONVERT(nvarchar(4000), OLD.[GuestNumber], 0), '[GuestNumber] Is Null')),
		'TotalPrice4',
		CONVERT(nvarchar(4000), OLD.[TotalPrice4], 2),
		'A'
		,  CONVERT(nvarchar(500), CONVERT(nvarchar(4000), OLD.[ReferenceNumber], 0)),  CONVERT(nvarchar(500), CONVERT(nvarchar(4000), OLD.[GuestNumber], 0))
	FROM deleted OLD
	WHERE
		OLD.[TotalPrice4] Is Not Null

	INSERT INTO dbo.AUDIT_LOG_DATA
	(
		AUDIT_LOG_TRANSACTION_ID,
		PRIMARY_KEY_DATA,
		COL_NAME,
		OLD_VALUE_LONG,
		DATA_TYPE
		, KEY1, KEY2
	)
	SELECT
		@AUDIT_LOG_TRANSACTION_ID,
		convert(nvarchar(1500), IsNull('[ReferenceNumber]='+CONVERT(nvarchar(4000), OLD.[ReferenceNumber], 0), '[ReferenceNumber] Is Null') + ' AND ' + IsNull('[GuestNumber]='+CONVERT(nvarchar(4000), OLD.[GuestNumber], 0), '[GuestNumber] Is Null')),
		'Currency',
		CONVERT(nvarchar(4000), OLD.[Currency], 0),
		'A'
		,  CONVERT(nvarchar(500), CONVERT(nvarchar(4000), OLD.[ReferenceNumber], 0)),  CONVERT(nvarchar(500), CONVERT(nvarchar(4000), OLD.[GuestNumber], 0))
	FROM deleted OLD
	WHERE
		OLD.[Currency] Is Not Null

	INSERT INTO dbo.AUDIT_LOG_DATA
	(
		AUDIT_LOG_TRANSACTION_ID,
		PRIMARY_KEY_DATA,
		COL_NAME,
		OLD_VALUE_LONG,
		DATA_TYPE
		, KEY1, KEY2
	)
	SELECT
		@AUDIT_LOG_TRANSACTION_ID,
		convert(nvarchar(1500), IsNull('[ReferenceNumber]='+CONVERT(nvarchar(4000), OLD.[ReferenceNumber], 0), '[ReferenceNumber] Is Null') + ' AND ' + IsNull('[GuestNumber]='+CONVERT(nvarchar(4000), OLD.[GuestNumber], 0), '[GuestNumber] Is Null')),
		'Day2',
		CONVERT(nvarchar(4000), OLD.[Day2], 0),
		'A'
		,  CONVERT(nvarchar(500), CONVERT(nvarchar(4000), OLD.[ReferenceNumber], 0)),  CONVERT(nvarchar(500), CONVERT(nvarchar(4000), OLD.[GuestNumber], 0))
	FROM deleted OLD
	WHERE
		OLD.[Day2] Is Not Null

	INSERT INTO dbo.AUDIT_LOG_DATA
	(
		AUDIT_LOG_TRANSACTION_ID,
		PRIMARY_KEY_DATA,
		COL_NAME,
		OLD_VALUE_LONG,
		DATA_TYPE
		, KEY1, KEY2
	)
	SELECT
		@AUDIT_LOG_TRANSACTION_ID,
		convert(nvarchar(1500), IsNull('[ReferenceNumber]='+CONVERT(nvarchar(4000), OLD.[ReferenceNumber], 0), '[ReferenceNumber] Is Null') + ' AND ' + IsNull('[GuestNumber]='+CONVERT(nvarchar(4000), OLD.[GuestNumber], 0), '[GuestNumber] Is Null')),
		'Day3',
		CONVERT(nvarchar(4000), OLD.[Day3], 0),
		'A'
		,  CONVERT(nvarchar(500), CONVERT(nvarchar(4000), OLD.[ReferenceNumber], 0)),  CONVERT(nvarchar(500), CONVERT(nvarchar(4000), OLD.[GuestNumber], 0))
	FROM deleted OLD
	WHERE
		OLD.[Day3] Is Not Null

	INSERT INTO dbo.AUDIT_LOG_DATA
	(
		AUDIT_LOG_TRANSACTION_ID,
		PRIMARY_KEY_DATA,
		COL_NAME,
		OLD_VALUE_LONG,
		DATA_TYPE
		, KEY1, KEY2
	)
	SELECT
		@AUDIT_LOG_TRANSACTION_ID,
		convert(nvarchar(1500), IsNull('[ReferenceNumber]='+CONVERT(nvarchar(4000), OLD.[ReferenceNumber], 0), '[ReferenceNumber] Is Null') + ' AND ' + IsNull('[GuestNumber]='+CONVERT(nvarchar(4000), OLD.[GuestNumber], 0), '[GuestNumber] Is Null')),
		'Day4',
		CONVERT(nvarchar(4000), OLD.[Day4], 0),
		'A'
		,  CONVERT(nvarchar(500), CONVERT(nvarchar(4000), OLD.[ReferenceNumber], 0)),  CONVERT(nvarchar(500), CONVERT(nvarchar(4000), OLD.[GuestNumber], 0))
	FROM deleted OLD
	WHERE
		OLD.[Day4] Is Not Null

	-- Lookup
	

	-- Restore @@IDENTITY Value
	DECLARE @maxprec AS varchar(2)
	SET @maxprec=CAST(@@MAX_PRECISION as varchar(2))
	EXEC('SELECT IDENTITY(decimal('+@maxprec+',0),'+@IDENTITY_SAVE+',1) id INTO #tmp')
END
