USP_DATAFORMTEMPLATE_EDIT_TEAMFUNDRAISINGTEAM_2

The save procedure used by the edit dataform template "Team Fundraising Team Edit Form 2".

Parameters

Parameter Parameter Type Mode Description
@ID uniqueidentifier IN The input ID parameter indicating the ID of the record being edited.
@CHANGEAGENTID uniqueidentifier IN Input parameter indicating the ID of the change agent invoking the procedure.
@NAME nvarchar(100) IN Name
@GOAL money IN Goal
@PARENTTEAMID uniqueidentifier IN
@CAPTAINS xml IN Captains
@TEAMFUNDRAISINGTEAMGROUPID uniqueidentifier IN TEAMFUNDRAISINGTEAMGROUPID
@TEAMHISTORYTEAMS xml IN Team history

Definition

Copy


                    CREATE procedure dbo.USP_DATAFORMTEMPLATE_EDIT_TEAMFUNDRAISINGTEAM_2
                    (
                        @ID uniqueidentifier,
                        @CHANGEAGENTID uniqueidentifier = null,
                        @NAME nvarchar(100),
                        @GOAL money,
                        @PARENTTEAMID uniqueidentifier,
                        @CAPTAINS xml,
                        @TEAMFUNDRAISINGTEAMGROUPID uniqueidentifier,
                        @TEAMHISTORYTEAMS xml
                    )
                    as
                    begin
                        set nocount on;

                        declare @CURRENTDATE datetime;
                        set @CURRENTDATE = getdate();

                        begin try
                            if @CHANGEAGENTID is null
                                exec dbo.USP_CHANGEAGENT_GETORCREATECHANGEAGENT @CHANGEAGENTID output;

                            exec dbo.USP_TEAMFUNDRAISINGTEAM_PREPARETEAMFUNDRAISINGTEAMGROUP @TEAMFUNDRAISINGTEAMGROUPID output,  @TEAMHISTORYTEAMS, @NAME, @CHANGEAGENTID, @CURRENTDATE;

                            if @TEAMFUNDRAISINGTEAMGROUPID is not null
                                exec dbo.USP_TEAMFUNDRAISINGTEAMGROUP_UPDATETEAMS @TEAMFUNDRAISINGTEAMGROUPID, @TEAMHISTORYTEAMS, @CHANGEAGENTID, @CURRENTDATE;

                            declare @BASECURRENCYID uniqueidentifier;
                            select 
                                @BASECURRENCYID = APPEAL.BASECURRENCYID
                            from dbo.TEAMFUNDRAISINGTEAM
                            left join dbo.APPEAL on APPEAL.ID = TEAMFUNDRAISINGTEAM.APPEALID
                            where TEAMFUNDRAISINGTEAM.ID = @ID;

                            declare @ORGANIZATIONCURRENCYID uniqueidentifier = dbo.UFN_CURRENCY_GETORGANIZATIONCURRENCY();
                            declare @ORGANIZATIONEXCHANGERATEID uniqueidentifier = dbo.UFN_CURRENCYEXCHANGERATE_GETLATESTORGANIZATIONRATE(@BASECURRENCYID, @ORGANIZATIONCURRENCYID, getdate(), null, null);
                            declare @ORGANIZATIONGOAL money = dbo.UFN_CURRENCY_CONVERTTOORGANIZATIONCURRENCY(@GOAL, @ORGANIZATIONEXCHANGERATEID, null);

                            update
                                dbo.TEAMFUNDRAISINGTEAM
                            set
                                NAME = @NAME,
                                GOAL = @GOAL,
                                ORGANIZATIONGOAL = @ORGANIZATIONGOAL,
                                ORGANIZATIONEXCHANGERATEID = @ORGANIZATIONEXCHANGERATEID,
                                BASECURRENCYID = @BASECURRENCYID,
                                PARENTTEAMID = @PARENTTEAMID,
                                TEAMFUNDRAISINGTEAMGROUPID = @TEAMFUNDRAISINGTEAMGROUPID,
                                CHANGEDBYID = @CHANGEAGENTID,
                                DATECHANGED = @CURRENTDATE
                            where
                                ID = @ID;

                            exec dbo.USP_TEAMFUNDRAISINGTEAM_GETCAPTAINS_UPDATEFROMXML @ID, @CAPTAINS, @CHANGEAGENTID;
                        end try

                        begin catch
                            exec dbo.USP_RAISE_ERROR;
                            return 1;
                        end catch

                        return 0;
                    end