TR_DONORCHALLENGESPLIT_INSERTUPDATE_CURRENCY

Definition

Copy


CREATE trigger [dbo].[TR_DONORCHALLENGESPLIT_INSERTUPDATE_CURRENCY] on [dbo].[DONORCHALLENGESPLIT] 
after insert, update 
not for replication
as
begin
 set nocount on;

 if update(AMOUNT)
 begin
  declare @ORGANIZATIONCURRENCYID uniqueidentifier = dbo.UFN_CURRENCY_GETORGANIZATIONCURRENCY();

  update
   dbo.DONORCHALLENGESPLIT
  set
   DONORCHALLENGESPLIT.ORGANIZATIONAMOUNT = DONORCHALLENGESPLIT.AMOUNT,
   DONORCHALLENGESPLIT.BASECURRENCYID = @ORGANIZATIONCURRENCYID,
   DONORCHALLENGESPLIT.CHANGEDBYID = DONORCHALLENGESPLIT.CHANGEDBYID,
   DONORCHALLENGESPLIT.DATECHANGED = DONORCHALLENGESPLIT.DATECHANGED
  from
   inserted
  inner join
   dbo.DONORCHALLENGESPLIT on inserted.ID = DONORCHALLENGESPLIT.ID
  where
   DONORCHALLENGESPLIT.ORGANIZATIONEXCHANGERATEID is null
   and (DONORCHALLENGESPLIT.BASECURRENCYID is null or DONORCHALLENGESPLIT.BASECURRENCYID = @ORGANIZATIONCURRENCYID)
   and (
        DONORCHALLENGESPLIT.ORGANIZATIONAMOUNT <> DONORCHALLENGESPLIT.AMOUNT
        or DONORCHALLENGESPLIT.AMOUNT = 0
   );

  end
end