USP_DATAFORMTEMPLATE_EDIT_PLEDGEGIFTFEEOVERRIDE

The save procedure used by the edit dataform template "Pledge Gift Fee Override Edit Form".

Parameters

Parameter Parameter Type Mode Description
@ID uniqueidentifier IN The input ID parameter indicating the ID of the record being edited.
@USECUSTOM bit IN Use custom gift fees
@CUSTOMFEE numeric(5, 1) IN Gift fee %
@WAIVEFEE bit IN Waive gift fees
@REASONCODEID uniqueidentifier IN Reason code
@COMMENTS nvarchar(255) IN Details
@CHANGEAGENTID uniqueidentifier IN Input parameter indicating the ID of the change agent invoking the procedure.

Definition

Copy


                CREATE procedure dbo.USP_DATAFORMTEMPLATE_EDIT_PLEDGEGIFTFEEOVERRIDE
                    (
                        @ID uniqueidentifier,
                        @USECUSTOM bit,
                        @CUSTOMFEE numeric(5, 1),
                        @WAIVEFEE bit,
                        @REASONCODEID uniqueidentifier,
                        @COMMENTS nvarchar(255),
                        @CHANGEAGENTID uniqueidentifier = null
                    )
                as
                    begin try
                        set nocount on;

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

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

                        if @USECUSTOM = 0 and @WAIVEFEE = 0 
                            exec dbo.USP_PLEDGEGIFTFEEOVERRIDE_DELETEBYID_WITHCHANGEAGENTID @ID, @CHANGEAGENTID;
                        else
                        begin
                            update dbo.PLEDGEGIFTFEEOVERRIDE
                            set
                                USECUSTOM = @USECUSTOM,
                                CUSTOMFEE = coalesce(@CUSTOMFEE, 0.00),
                                WAIVEFEE = @WAIVEFEE,
                                REASONCODEID = @REASONCODEID,
                                COMMENTS = @COMMENTS,
                                CHANGEDBYID = @CHANGEAGENTID,
                                DATECHANGED = @CURRENTDATE
                            from
                                dbo.PLEDGEGIFTFEEOVERRIDE
                            where
                                ID = @ID;

                            --if new then insert data

                            if @@ROWCOUNT = 0
                                insert into dbo.PLEDGEGIFTFEEOVERRIDE(ID, USECUSTOM, CUSTOMFEE, WAIVEFEE, REASONCODEID, COMMENTS, ADDEDBYID, CHANGEDBYID, DATECHANGED, DATEADDED)
                                values(@ID, @USECUSTOM, coalesce(@CUSTOMFEE, 0), @WAIVEFEE, @REASONCODEID, @COMMENTS, @CHANGEAGENTID, @CHANGEAGENTID, @CURRENTDATE, @CURRENTDATE)

                        end

                    end try

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

                    return 0;