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