![]() |
---|
CREATE trigger dbo.[TR_MKTACKNOWLEDGEMENTMAILINGTEMPLATERULE_INSERTUPDATE_CURRENCY] on dbo.[MKTACKNOWLEDGEMENTMAILINGTEMPLATERULE] after insert, update not for replication as begin set nocount on; declare @ORGANIZATIONCURRENCYID uniqueidentifier; --Make sure the base currency is set equal to the parent if it is not already set... update dbo.[MKTACKNOWLEDGEMENTMAILINGTEMPLATERULE] set [MKTACKNOWLEDGEMENTMAILINGTEMPLATERULE].[BASECURRENCYID] = [MKTACKNOWLEDGEMENTMAILINGTEMPLATE].[BASECURRENCYID], [MKTACKNOWLEDGEMENTMAILINGTEMPLATERULE].[CHANGEDBYID] = [MKTACKNOWLEDGEMENTMAILINGTEMPLATERULE].[CHANGEDBYID], [MKTACKNOWLEDGEMENTMAILINGTEMPLATERULE].[DATECHANGED] = [MKTACKNOWLEDGEMENTMAILINGTEMPLATERULE].[DATECHANGED] from inserted inner join dbo.[MKTACKNOWLEDGEMENTMAILINGTEMPLATERULE] on inserted.ID = [MKTACKNOWLEDGEMENTMAILINGTEMPLATERULE].[ID] inner join dbo.[MKTACKNOWLEDGEMENTMAILINGTEMPLATE] on [MKTACKNOWLEDGEMENTMAILINGTEMPLATE].[ID] = [MKTACKNOWLEDGEMENTMAILINGTEMPLATERULE].[ACKNOWLEDGEMENTMAILINGTEMPLATEID] where [MKTACKNOWLEDGEMENTMAILINGTEMPLATERULE].[BASECURRENCYID] is null; if update(GIFTAMOUNT) begin set @ORGANIZATIONCURRENCYID = dbo.[UFN_CURRENCY_GETORGANIZATIONCURRENCY](); --Base currency will always be set by the update statement above, so we don't have to worry about it here... update dbo.[MKTACKNOWLEDGEMENTMAILINGTEMPLATERULE] set [MKTACKNOWLEDGEMENTMAILINGTEMPLATERULE].[ORGANIZATIONGIFTAMOUNT] = [MKTACKNOWLEDGEMENTMAILINGTEMPLATERULE].[GIFTAMOUNT], [MKTACKNOWLEDGEMENTMAILINGTEMPLATERULE].[CHANGEDBYID] = [MKTACKNOWLEDGEMENTMAILINGTEMPLATERULE].[CHANGEDBYID], [MKTACKNOWLEDGEMENTMAILINGTEMPLATERULE].[DATECHANGED] = [MKTACKNOWLEDGEMENTMAILINGTEMPLATERULE].[DATECHANGED] from inserted inner join dbo.[MKTACKNOWLEDGEMENTMAILINGTEMPLATERULE] on inserted.ID = [MKTACKNOWLEDGEMENTMAILINGTEMPLATERULE].[ID] where [MKTACKNOWLEDGEMENTMAILINGTEMPLATERULE].[CURRENCYEXCHANGERATEID] is null and [MKTACKNOWLEDGEMENTMAILINGTEMPLATERULE].[BASECURRENCYID] = @ORGANIZATIONCURRENCYID and ([MKTACKNOWLEDGEMENTMAILINGTEMPLATERULE].[ORGANIZATIONGIFTAMOUNT] <> [MKTACKNOWLEDGEMENTMAILINGTEMPLATERULE].[GIFTAMOUNT] or [MKTACKNOWLEDGEMENTMAILINGTEMPLATERULE].[GIFTAMOUNT] = 0); end end |