![]() |
---|
CREATE trigger [dbo].[TR_REVENUESPLITGIFTAIDREFUND_INSERTUPDATE_CURRENCY] on [dbo].[REVENUESPLITGIFTAIDREFUND] after insert, update not for replication as begin set nocount on; declare @ORGANIZATIONCURRENCYID uniqueidentifier = dbo.UFN_CURRENCY_GETORGANIZATIONCURRENCY(); -- if we try to save an amount without explicitly setting an organization amount and an exchange rate, -- copy the amount to the organization and transaction amounts. if update(ORIGINALGIFTAMOUNT) or update(ORIGINALBASETAXCLAIMAMOUNT) or update(ORIGINALTRANSITIONALTAXCLAIMAMOUNT) update dbo.REVENUESPLITGIFTAIDREFUND set REVENUESPLITGIFTAIDREFUND.ORIGINALTRANSACTIONBASETAXCLAIMAMOUNT = REVENUESPLITGIFTAIDREFUND.ORIGINALBASETAXCLAIMAMOUNT, REVENUESPLITGIFTAIDREFUND.ORIGINALORGANIZATIONBASETAXCLAIMAMOUNT = REVENUESPLITGIFTAIDREFUND.ORIGINALBASETAXCLAIMAMOUNT, REVENUESPLITGIFTAIDREFUND.ORIGINALTRANSACTIONTRANSITIONALTAXCLAIMAMOUNT = REVENUESPLITGIFTAIDREFUND.ORIGINALTRANSITIONALTAXCLAIMAMOUNT, REVENUESPLITGIFTAIDREFUND.ORIGINALORGANIZATIONTRANSITIONALTAXCLAIMAMOUNT = REVENUESPLITGIFTAIDREFUND.ORIGINALTRANSITIONALTAXCLAIMAMOUNT, REVENUESPLITGIFTAIDREFUND.ORIGINALBASECURRENCYID = @ORGANIZATIONCURRENCYID, REVENUESPLITGIFTAIDREFUND.ORIGINALTRANSACTIONCURRENCYID = @ORGANIZATIONCURRENCYID, REVENUESPLITGIFTAIDREFUND.CHANGEDBYID = REVENUESPLITGIFTAIDREFUND.CHANGEDBYID, REVENUESPLITGIFTAIDREFUND.DATECHANGED = REVENUESPLITGIFTAIDREFUND.DATECHANGED, REVENUESPLITGIFTAIDREFUND.ORIGINALTRANSACTIONGIFTAMOUNT = REVENUESPLITGIFTAIDREFUND.ORIGINALGIFTAMOUNT, REVENUESPLITGIFTAIDREFUND.ORIGINALORGANIZATIONGIFTAMOUNT = REVENUESPLITGIFTAIDREFUND.ORIGINALGIFTAMOUNT from inserted inner join dbo.REVENUESPLITGIFTAIDREFUND on inserted.ID = REVENUESPLITGIFTAIDREFUND.ID where REVENUESPLITGIFTAIDREFUND.ORIGINALORGANIZATIONEXCHANGERATEID is null and (REVENUESPLITGIFTAIDREFUND.ORIGINALBASECURRENCYID is null or REVENUESPLITGIFTAIDREFUND.ORIGINALBASECURRENCYID = @ORGANIZATIONCURRENCYID) and REVENUESPLITGIFTAIDREFUND.ORIGINALBASEEXCHANGERATEID is null and (REVENUESPLITGIFTAIDREFUND.ORIGINALTRANSACTIONCURRENCYID is null or REVENUESPLITGIFTAIDREFUND.ORIGINALTRANSACTIONCURRENCYID = @ORGANIZATIONCURRENCYID) and ( REVENUESPLITGIFTAIDREFUND.ORIGINALTRANSACTIONBASETAXCLAIMAMOUNT <> REVENUESPLITGIFTAIDREFUND.ORIGINALBASETAXCLAIMAMOUNT or REVENUESPLITGIFTAIDREFUND.ORIGINALORGANIZATIONBASETAXCLAIMAMOUNT <> REVENUESPLITGIFTAIDREFUND.ORIGINALBASETAXCLAIMAMOUNT or REVENUESPLITGIFTAIDREFUND.ORIGINALTRANSACTIONTRANSITIONALTAXCLAIMAMOUNT <> REVENUESPLITGIFTAIDREFUND.ORIGINALTRANSITIONALTAXCLAIMAMOUNT or REVENUESPLITGIFTAIDREFUND.ORIGINALORGANIZATIONTRANSITIONALTAXCLAIMAMOUNT <> REVENUESPLITGIFTAIDREFUND.ORIGINALTRANSITIONALTAXCLAIMAMOUNT or ( REVENUESPLITGIFTAIDREFUND.ORIGINALBASETAXCLAIMAMOUNT = 0 and REVENUESPLITGIFTAIDREFUND.ORIGINALTRANSITIONALTAXCLAIMAMOUNT = 0 ) ) end |