USP_DATAFORMTEMPLATE_EDIT_REGISTRANT_GOAL

The save procedure used by the edit dataform template "Event Registrant Goals Edit Form".

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.
@FUNDRAISINGGOAL money IN Minimum fundraising goal
@TARGETFUNDRAISINGGOAL money IN Target fundraising goal
@MEMBERECRUITMENTGOAL int IN Number of participants to recruit
@DONORRETENTIONGOAL decimal(5, 2) IN Percentage of donors to retain
@COMMUNICATIONGOAL int IN Number of communications to send

Definition

Copy

CREATE procedure dbo.USP_DATAFORMTEMPLATE_EDIT_REGISTRANT_GOAL (
    @ID uniqueidentifier,
    @CHANGEAGENTID uniqueidentifier = null,
    @FUNDRAISINGGOAL money,
    @TARGETFUNDRAISINGGOAL money ,
    @MEMBERECRUITMENTGOAL int ,
    @DONORRETENTIONGOAL decimal(5,2),
    @COMMUNICATIONGOAL int 
    --@VOLUNTEERRECRUITMENTGOAL int
    --@OTHERUNITGOAL int 
)
as

    set nocount on;

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

    declare @CURRENTDATE datetime
    set @CURRENTDATE = getdate()

    if (@FUNDRAISINGGOAL < 0)
begin  
  raiserror('FUNDRAISINGNOTVALID',13,2);
  return 1
end
   if (@TARGETFUNDRAISINGGOAL < 0)
begin  
  raiserror('TARGETFUNDRAISINGNOTVALID',13,2);
  return 1
end
 if (@MEMBERECRUITMENTGOAL < 0)
begin  
  raiserror('MEMBERECRUITMENTGOALNOTVALID',13,2);
  return 1
end
if (@DONORRETENTIONGOAL < 0)
begin  
  raiserror('DONORRETENTIONGOALNOTVALID',13,2);
  return 1
end
if (@COMMUNICATIONGOAL < 0)
begin  
  raiserror('COMMUNICATIONGOALNOTVALID',13,2);
  return 1
end



    begin try
        -- handle updating the data
        update dbo.REGISTRANTEXTENSION set
            FUNDRAISINGGOAL = @FUNDRAISINGGOAL,
            TARGETFUNDRAISINGGOAL = @TARGETFUNDRAISINGGOAL,
            MEMBERECRUITMENTGOAL = @MEMBERECRUITMENTGOAL,
            DONORRETENTIONGOAL = @DONORRETENTIONGOAL/100,
            COMMUNICATIONGOAL = @COMMUNICATIONGOAL,
            --VOLUNTEERRECRUITMENTGOAL = @VOLUNTEERRECRUITMENTGOAL,
            --OTHERUNITGOAL = @OTHERUNITGOAL,
            CHANGEDBYID = @CHANGEAGENTID,
            DATECHANGED = @CURRENTDATE
        where REGISTRANTID = @ID
    end try
    begin catch
        exec dbo.USP_RAISE_ERROR
        return 1
    end catch

return 0;