USP_DATAFORMTEMPLATE_DESIGNATIONLEVELOPTIONS_EDITSAVE

The save procedure used by the edit dataform template "Fundraising Purpose Status Edit Data 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.
@ISACCEPTINGFUNDS bit IN Accepting funds
@ISDISBURSINGMONEY bit IN Disbursing money

Definition

Copy

CREATE procedure dbo.USP_DATAFORMTEMPLATE_DESIGNATIONLEVELOPTIONS_EDITSAVE (
  @ID uniqueidentifier
  ,@CHANGEAGENTID uniqueidentifier = null
  ,@ISACCEPTINGFUNDS bit
  ,@ISDISBURSINGMONEY bit
  )
as
set nocount on;

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

declare @CURRENTDATE datetime;

set @CURRENTDATE = getdate();

begin try
  update dbo.DESIGNATIONLEVEL
  set ISACCEPTINGFUNDS = @ISACCEPTINGFUNDS
    ,ISDISBURSINGMONEY = @ISDISBURSINGMONEY
    ,CHANGEDBYID = @CHANGEAGENTID
    ,DATECHANGED = @CURRENTDATE
  where ID = @ID

  if @ISACCEPTINGFUNDS = 0
  begin
    update dbo.DESIGNATION
    set ISACTIVE = 0
      ,CHANGEDBYID = @CHANGEAGENTID
      ,DATECHANGED = @CURRENTDATE
    where (
        DESIGNATION.DESIGNATIONLEVEL1ID = @ID
        or DESIGNATION.DESIGNATIONLEVEL2ID = @ID
        or DESIGNATION.DESIGNATIONLEVEL3ID = @ID
        or DESIGNATION.DESIGNATIONLEVEL4ID = @ID
        or DESIGNATION.DESIGNATIONLEVEL5ID = @ID
        )
      and ISACTIVE = 1
      and SYSTEMGENERATED = 0
  end
end try

begin catch
  exec dbo.USP_RAISE_ERROR;

  return 1;
end catch

return 0;