![]() |
---|
CREATE trigger [dbo].[TR_RECURRINGGIFTDEVELOPMENTFUNCTIONHISTORY_INSERTUPDATE_CURRENCY] on [dbo].[RECURRINGGIFTDEVELOPMENTFUNCTIONHISTORY] after insert, update not for replication as begin set nocount on; if update(AMOUNT) or update(PREVIOUSAMOUNT) begin declare @ORGANIZATIONCURRENCYID uniqueidentifier = dbo.UFN_CURRENCY_GETORGANIZATIONCURRENCY(); update H set H.ORGANIZATIONAMOUNT = H.AMOUNT, H.TRANSACTIONAMOUNT = H.AMOUNT, H.PREVIOUSORGANIZATIONAMOUNT = H.PREVIOUSAMOUNT, H.PREVIOUSTRANSACTIONAMOUNT = H.PREVIOUSAMOUNT, H.BASECURRENCYID = @ORGANIZATIONCURRENCYID, H.TRANSACTIONCURRENCYID = @ORGANIZATIONCURRENCYID, H.CHANGEDBYID = H.CHANGEDBYID, H.DATECHANGED = H.DATECHANGED from inserted inner join dbo.RECURRINGGIFTDEVELOPMENTFUNCTIONHISTORY H on inserted.ID = H.ID where H.ORGANIZATIONEXCHANGERATEID is null and H.PREVIOUSORGANIZATIONEXCHANGERATEID is null and (H.BASECURRENCYID is null or H.BASECURRENCYID = @ORGANIZATIONCURRENCYID) and H.BASEEXCHANGERATEID is null and H.PREVIOUSBASEEXCHANGERATEID is null and (H.TRANSACTIONCURRENCYID is null or H.TRANSACTIONCURRENCYID = @ORGANIZATIONCURRENCYID) and ( H.ORGANIZATIONAMOUNT <> H.AMOUNT or H.TRANSACTIONAMOUNT <> H.AMOUNT or H.PREVIOUSORGANIZATIONAMOUNT <> H.PREVIOUSAMOUNT or H.PREVIOUSTRANSACTIONAMOUNT <> H.PREVIOUSAMOUNT or (H.AMOUNT = 0 and H.PREVIOUSAMOUNT = 0) ); end end |