USP_DATAFORMTEMPLATE_EDIT_EVENTTEAMHIERARCHY_CONFIG

The save procedure used by the edit dataform template "EventTeamHierarchyConfig 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.
@INDIVIDUALSFUNDRAISE bit IN Individual participants can fundraise
@HOUSEHOLDSFUNDRAISE bit IN Households can fundraise
@HOUSEHOLDLEADERAPPOINTHOUSEHOLDCOLEADERS tinyint IN
@HOUSEHOLDSJOINTEAMS bit IN Households can join teams
@TEAMSFUNDRAISE bit IN Teams can fundraise
@TEAMSREQUESTFUNDRAISE bit IN Event administrator must approve new teams
@TEAMNAMECHANGEAFTERREG bit IN Team name can change after registration
@TEAMLEADERAPPOINTTEAMCOLEADERS tinyint IN
@COMPANIESFUNDRAISE bit IN Companies can fundraise
@COMPANYTEAMSAPPROVEBYEVENTADMIN bit IN Event administrator must approve new companies
@COMPANYLEADERAPPOINTCOMPANYCOLEADERS tinyint IN
@COMPANYNAMECHANGEAFTERREG bit IN Company name can change after registration
@INDIVIDUALREGOPTIONS int IN Individual reg options
@HOUSEHOLDREGOPTIONS int IN Household reg options
@TEAMREGOPTIONS int IN Team reg options
@COMPANYREGOPTIONS int IN Company reg options
@HOUSEHOLDMEMBERSLIMIT int IN Household members limit
@TEAMMEMBERSLIMIT int IN Team members limit
@COMPANYTEAMSLIMIT int IN Company teams limit
@COMPANYTEAMMEMBERSLIMIT int IN Company team members limit
@PARTICIPANTSCANREACTIVATETEAMS bit IN Participants can reactivate teams
@FORMERTEAMCANREACTIVATETEAMSCODE tinyint IN Choice of team activation level
@PARTICIPANTSCANREACTIVATECOMPANYTEAMS bit IN Participants can reactivate companies
@FORMERCOMPANYCANREACTIVATETEAMSCODE tinyint IN Choice of company activation level
@PARTICIPANTSCANREACTIVATEHOUSEHOLDS bit IN Participants can reactivate households
@FORMERHOUSEHOLDCANREACTIVATEHOUSEHOLDCODE tinyint IN Choice of household team activation level

Definition

Copy

CREATE procedure dbo.USP_DATAFORMTEMPLATE_EDIT_EVENTTEAMHIERARCHY_CONFIG (
    @ID uniqueidentifier,
    @CHANGEAGENTID uniqueidentifier = null,
    @INDIVIDUALSFUNDRAISE bit,
    @HOUSEHOLDSFUNDRAISE bit,
    --@HOUSEHOLDAPPROVEBYEVENTADMIN bit,
    @HOUSEHOLDLEADERAPPOINTHOUSEHOLDCOLEADERS tinyint,
  @HOUSEHOLDSJOINTEAMS bit,
    @TEAMSFUNDRAISE bit,
    @TEAMSREQUESTFUNDRAISE bit,
  @TEAMNAMECHANGEAFTERREG bit,
    @TEAMLEADERAPPOINTTEAMCOLEADERS tinyint
  --@TEAMLEADERAPPROVETEAMMEMBERS tinyint,-- radio option list
    --@TEAMLEADEROPTIONAPPROVETEAMMEMBERS bit,
    @COMPANIESFUNDRAISE bit,
  @COMPANYTEAMSAPPROVEBYEVENTADMIN bit,
    @COMPANYLEADERAPPOINTCOMPANYCOLEADERS tinyint
    --@COMPANYLEADERAPPROVETEAMS tinyint,-- radio option list
  @COMPANYNAMECHANGEAFTERREG bit,
   @INDIVIDUALREGOPTIONS    int,
 @HOUSEHOLDREGOPTIONS    int,
 @TEAMREGOPTIONS    int,
 @COMPANYREGOPTIONS    int,

 @HOUSEHOLDMEMBERSLIMIT int,
 @TEAMMEMBERSLIMIT int,
 @COMPANYTEAMSLIMIT int,
 @COMPANYTEAMMEMBERSLIMIT int,
 @PARTICIPANTSCANREACTIVATETEAMS bit,
 @FORMERTEAMCANREACTIVATETEAMSCODE tinyint
 @PARTICIPANTSCANREACTIVATECOMPANYTEAMS bit,
 @FORMERCOMPANYCANREACTIVATETEAMSCODE tinyint,
 @PARTICIPANTSCANREACTIVATEHOUSEHOLDS bit,
 @FORMERHOUSEHOLDCANREACTIVATEHOUSEHOLDCODE tinyint

)
as

    set nocount on;

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

    declare @CURRENTDATE datetime
    set @CURRENTDATE = getdate()

    declare @GrouplimitCntErrorStr varchar(100)

    declare @HOUSEHOLDCOUNT int
    declare  @TEMMEMBERSCOUNT int
    declare @COMPANYTEAMSCOUNT int
    declare @COMPANYMEMBERSCOUNT int

  SELECT @HOUSEHOLDCOUNT = MAXHOUSEHOLD,
         @TEMMEMBERSCOUNT = MAXTEAMMEMBERS, 
         @COMPANYTEAMSCOUNT = MAXCOMPANYTEAMS, 
         @COMPANYMEMBERSCOUNT = MAXCOMPANYMEMBERS
   from DBO.UFN_FAF_GROUPCOUNT_BY_EVENTID(@ID)

 if(@HOUSEHOLDCOUNT > @HOUSEHOLDMEMBERSLIMIT and @HOUSEHOLDMEMBERSLIMIT <> 0)

begin
   set @GrouplimitCntErrorStr = 'The current number of household ' + CONVERT(varchar(5), @HOUSEHOLDCOUNT) + '.  Enter a number greater than or equal to ' + CONVERT(varchar(5), @HOUSEHOLDCOUNT) + '.'
   raiserror(@GrouplimitCntErrorStr,13,2);
  return 1
end

 if(@TEMMEMBERSCOUNT > @TEAMMEMBERSLIMIT and @TEAMMEMBERSLIMIT <> 0)

begin
   set @GrouplimitCntErrorStr = 'The current number of team members ' + CONVERT(varchar(5), @TEMMEMBERSCOUNT) + '.  Enter a number greater than or equal to ' + CONVERT(varchar(5), @TEMMEMBERSCOUNT) + '.'
   raiserror(@GrouplimitCntErrorStr,13,2);
  return 1
end

if(@COMPANYTEAMSCOUNT > @COMPANYTEAMSLIMIT and @COMPANYTEAMSLIMIT <> 0)

begin
   set @GrouplimitCntErrorStr = 'The current number of company teams ' + CONVERT(varchar(5), @COMPANYTEAMSCOUNT) + '.  Enter a number greater than or equal to ' + CONVERT(varchar(5), @COMPANYTEAMSCOUNT) + '.'
   raiserror(@GrouplimitCntErrorStr,13,2);
  return 1
end

if(@COMPANYMEMBERSCOUNT > @COMPANYTEAMMEMBERSLIMIT and @COMPANYTEAMMEMBERSLIMIT <> 0)

begin
   set @GrouplimitCntErrorStr = 'The current number of company teams team members ' + CONVERT(varchar(5), @COMPANYMEMBERSCOUNT) + '.  Enter a number greater than or equal to ' + CONVERT(varchar(5), @COMPANYMEMBERSCOUNT) + '.'
   raiserror(@GrouplimitCntErrorStr,13,2);
  return 1
end



  declare @TEAMLEADEROPTIONAPPROVETEAMMEMBERS bit
  declare @COMPANYLEADEROPTIONAPPROVETEAMS bit

  set @TEAMLEADEROPTIONAPPROVETEAMMEMBERS = 0
  set @COMPANYLEADEROPTIONAPPROVETEAMS = 0

  /*
  if @TEAMLEADERAPPROVETEAMMEMBERS = 0 
    set @TEAMLEADEROPTIONAPPROVETEAMMEMBERS = 1
  */

  /*
  if @COMPANYLEADERAPPROVETEAMS = 0
    set @COMPANYLEADEROPTIONAPPROVETEAMS = 1
   */

  /*
  if @TEAMSFUNDRAISE = 0 or (@TEAMSFUNDRAISE = 1 and (@TEAMLEADERAPPROVETEAMMEMBERS is null or @TEAMLEADERAPPROVETEAMMEMBERS > 1))
    begin
      set @TEAMLEADERAPPROVETEAMMEMBERS = 0
      set @TEAMLEADEROPTIONAPPROVETEAMMEMBERS = 0
    end
  */

  /*
  if @COMPANIESFUNDRAISE = 0 or (@COMPANIESFUNDRAISE = 1 and (@COMPANYLEADERAPPROVETEAMS is null or @COMPANYLEADERAPPROVETEAMS > 1))
    begin
      set @COMPANYLEADERAPPROVETEAMS = 0
      set @COMPANYLEADEROPTIONAPPROVETEAMS = 0
    end
  */

    begin try
        -- handle updating the data
    update EVENTTEAMFAFCONFIG
    set
      INDIVIDUALSFUNDRAISE = @INDIVIDUALSFUNDRAISE,
      HOUSEHOLDSFUNDRAISE = @HOUSEHOLDSFUNDRAISE,
      --HOUSEHOLDAPPROVEBYEVENTADMIN =@HOUSEHOLDAPPROVEBYEVENTADMIN,
      HOUSEHOLDLEADERAPPOINTHOUSEHOLDCOLEADERS = @HOUSEHOLDLEADERAPPOINTHOUSEHOLDCOLEADERS,
      HOUSEHOLDSJOINTEAMS = @HOUSEHOLDSJOINTEAMS,
      TEAMSFUNDRAISE = @TEAMSFUNDRAISE,
      TEAMSREQUESTFUNDRAISE = @TEAMSREQUESTFUNDRAISE,
      TEAMNAMECHANGEAFTERREG = @TEAMNAMECHANGEAFTERREG,
      TEAMLEADERAPPOINTTEAMCOLEADERS = @TEAMLEADERAPPOINTTEAMCOLEADERS,
      --TEAMLEADERAPPROVETEAMMEMBERS = @TEAMLEADERAPPROVETEAMMEMBERS,
      --TEAMLEADEROPTIONAPPROVETEAMMEMBERS = @TEAMLEADEROPTIONAPPROVETEAMMEMBERS,
      COMPANIESFUNDRAISE = @COMPANIESFUNDRAISE,
      COMPANYTEAMSAPPROVEBYEVENTADMIN = @COMPANYTEAMSAPPROVEBYEVENTADMIN,
      COMPANYLEADERAPPOINTCOMPANYCOLEADERS = @COMPANYLEADERAPPOINTCOMPANYCOLEADERS,
      --COMPANYLEADERAPPROVETEAMS = @COMPANYLEADERAPPROVETEAMS,
      --COMPANYLEADEROPTIONAPPROVETEAMS = @COMPANYLEADEROPTIONAPPROVETEAMS,
      COMPANYNAMECHANGEAFTERREG = @COMPANYNAMECHANGEAFTERREG,

      HOUSEHOLDMEMBERSLIMIT= @HOUSEHOLDMEMBERSLIMIT,
      TEAMMEMBERSLIMIT= @TEAMMEMBERSLIMIT,
      COMPANYTEAMSLIMIT= @COMPANYTEAMSLIMIT,
      COMPANYTEAMMEMBERSLIMIT= @COMPANYTEAMMEMBERSLIMIT,
      PARTICIPANTSCANREACTIVATETEAMS= @PARTICIPANTSCANREACTIVATETEAMS,
      FORMERTEAMCANREACTIVATETEAMSCODE= @FORMERTEAMCANREACTIVATETEAMSCODE,
      PARTICIPANTSCANREACTIVATECOMPANYTEAMS= @PARTICIPANTSCANREACTIVATECOMPANYTEAMS,
      FORMERCOMPANYCANREACTIVATETEAMSCODE= @FORMERCOMPANYCANREACTIVATETEAMSCODE,
    PARTICIPANTSCANREACTIVATEHOUSEHOLDS = @PARTICIPANTSCANREACTIVATEHOUSEHOLDS,
    FORMERHOUSEHOLDCANREACTIVATEHOUSEHOLDCODE = @FORMERHOUSEHOLDCANREACTIVATEHOUSEHOLDCODE,


          CHANGEDBYID = @CHANGEAGENTID,
          DATECHANGED = @CURRENTDATE    
    where EVENTID = @ID     

    exec USP_DATAFORMTEMPLATE_EDIT_EVENT_FAF_CONFIG @CHANGEAGENTID = @CHANGEAGENTID, @EVENTID = @ID , @TEAMHIERARCHYISSET = 1;

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

return 0;