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