TR_GROUPGOAL_INSERTUPDATE_CURRENCY

Definition

Copy


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

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

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