TR_RECOGNITIONCREDIT_INSERTUPDATE_CURRENCY

Definition

Copy


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

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

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