![]() |
---|
CREATE trigger [dbo].[TR_UNREALIZEDGAINLOSSADJUSTMENT_INSERTUPDATE_CURRENCY] on [dbo].[UNREALIZEDGAINLOSSADJUSTMENT] after insert, update not for replication as begin set nocount on; if update(PREVIOUSAMOUNT) begin declare @ORGANIZATIONCURRENCYID uniqueidentifier = dbo.UFN_CURRENCY_GETORGANIZATIONCURRENCY(); update dbo.UNREALIZEDGAINLOSSADJUSTMENT set UNREALIZEDGAINLOSSADJUSTMENT.ORGANIZATIONPREVIOUSAMOUNT = UNREALIZEDGAINLOSSADJUSTMENT.PREVIOUSAMOUNT, UNREALIZEDGAINLOSSADJUSTMENT.TRANSACTIONPREVIOUSAMOUNT = UNREALIZEDGAINLOSSADJUSTMENT.PREVIOUSAMOUNT, UNREALIZEDGAINLOSSADJUSTMENT.BASECURRENCYID = @ORGANIZATIONCURRENCYID, UNREALIZEDGAINLOSSADJUSTMENT.TRANSACTIONCURRENCYID = @ORGANIZATIONCURRENCYID, UNREALIZEDGAINLOSSADJUSTMENT.CHANGEDBYID = UNREALIZEDGAINLOSSADJUSTMENT.CHANGEDBYID, UNREALIZEDGAINLOSSADJUSTMENT.DATECHANGED = UNREALIZEDGAINLOSSADJUSTMENT.DATECHANGED from inserted inner join dbo.UNREALIZEDGAINLOSSADJUSTMENT on inserted.ID = UNREALIZEDGAINLOSSADJUSTMENT.ID where UNREALIZEDGAINLOSSADJUSTMENT.ORGANIZATIONEXCHANGERATEID is null and (UNREALIZEDGAINLOSSADJUSTMENT.BASECURRENCYID is null or UNREALIZEDGAINLOSSADJUSTMENT.BASECURRENCYID = @ORGANIZATIONCURRENCYID) and UNREALIZEDGAINLOSSADJUSTMENT.BASEEXCHANGERATEID is null and (UNREALIZEDGAINLOSSADJUSTMENT.TRANSACTIONCURRENCYID is null or UNREALIZEDGAINLOSSADJUSTMENT.TRANSACTIONCURRENCYID = @ORGANIZATIONCURRENCYID) and ( UNREALIZEDGAINLOSSADJUSTMENT.ORGANIZATIONPREVIOUSAMOUNT <> UNREALIZEDGAINLOSSADJUSTMENT.PREVIOUSAMOUNT or UNREALIZEDGAINLOSSADJUSTMENT.TRANSACTIONPREVIOUSAMOUNT <> UNREALIZEDGAINLOSSADJUSTMENT.PREVIOUSAMOUNT or UNREALIZEDGAINLOSSADJUSTMENT.PREVIOUSAMOUNT = 0 ); end end |