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