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