USP_DATAFORMTEMPLATE_EDITLOAD_EVENTTEAMHIERARCHY_CONFIG
The load procedure used by the edit dataform template "EventTeamHierarchyConfig Edit Form"
Parameters
Parameter | Parameter Type | Mode | Description |
---|---|---|---|
@ID | uniqueidentifier | IN | The input ID parameter used to load the fields defined on the form. |
@DATALOADED | bit | INOUT | Output parameter indicating whether or not data was actually loaded. |
@TSLONG | bigint | INOUT | Output parameter indicating the TSLONG value of the record being edited. This is used to manage multi-user concurrency issues when multiple users access the same record. |
@INDIVIDUALSFUNDRAISE | bit | INOUT | Individual participants can fundraise |
@HOUSEHOLDSFUNDRAISE | bit | INOUT | Households can fundraise |
@HOUSEHOLDLEADERAPPOINTHOUSEHOLDCOLEADERS | tinyint | INOUT | |
@HOUSEHOLDSJOINTEAMS | bit | INOUT | Households can join teams |
@TEAMSFUNDRAISE | bit | INOUT | Teams can fundraise |
@TEAMSREQUESTFUNDRAISE | bit | INOUT | Event administrator must approve new teams |
@TEAMNAMECHANGEAFTERREG | bit | INOUT | Team name can change after registration |
@TEAMLEADERAPPOINTTEAMCOLEADERS | tinyint | INOUT | |
@COMPANIESFUNDRAISE | bit | INOUT | Companies can fundraise |
@COMPANYTEAMSAPPROVEBYEVENTADMIN | bit | INOUT | Event administrator must approve new companies |
@COMPANYLEADERAPPOINTCOMPANYCOLEADERS | tinyint | INOUT | |
@COMPANYNAMECHANGEAFTERREG | bit | INOUT | Company name can change after registration |
@INDIVIDUALREGOPTIONS | int | INOUT | Individual reg options |
@HOUSEHOLDREGOPTIONS | int | INOUT | Household reg options |
@TEAMREGOPTIONS | int | INOUT | Team reg options |
@COMPANYREGOPTIONS | int | INOUT | Company reg options |
@HOUSEHOLDMEMBERSLIMIT | int | INOUT | Household members limit |
@TEAMMEMBERSLIMIT | int | INOUT | Team members limit |
@COMPANYTEAMSLIMIT | int | INOUT | Company teams limit |
@COMPANYTEAMMEMBERSLIMIT | int | INOUT | Company team members limit |
@PARTICIPANTSCANREACTIVATETEAMS | bit | INOUT | Participants can reactivate teams |
@FORMERTEAMCANREACTIVATETEAMSCODE | tinyint | INOUT | Choice of team activation level |
@PARTICIPANTSCANREACTIVATECOMPANYTEAMS | bit | INOUT | Participants can reactivate companies |
@FORMERCOMPANYCANREACTIVATETEAMSCODE | tinyint | INOUT | Choice of company activation level |
@PARTICIPANTSCANREACTIVATEHOUSEHOLDS | bit | INOUT | Participants can reactivate households |
@FORMERHOUSEHOLDCANREACTIVATEHOUSEHOLDCODE | tinyint | INOUT | Choice of household team activation level |
@HASPREVIOUSEVENTLINK | bit | INOUT | Has previous year event link |
Definition
Copy
CREATE procedure dbo.USP_DATAFORMTEMPLATE_EDITLOAD_EVENTTEAMHIERARCHY_CONFIG(
@ID uniqueidentifier,
@DATALOADED bit = 0 output,
@TSLONG bigint = 0 output,
@INDIVIDUALSFUNDRAISE bit = null output,
@HOUSEHOLDSFUNDRAISE bit = null output,
--@HOUSEHOLDAPPROVEBYEVENTADMIN bit = null output,
@HOUSEHOLDLEADERAPPOINTHOUSEHOLDCOLEADERS tinyint = null output,
@HOUSEHOLDSJOINTEAMS bit = null output,
@TEAMSFUNDRAISE bit = null output,
@TEAMSREQUESTFUNDRAISE bit = null output,
@TEAMNAMECHANGEAFTERREG bit = null output,
@TEAMLEADERAPPOINTTEAMCOLEADERS tinyint = null output,
--@TEAMLEADERAPPROVETEAMMEMBERS tinyint = null output, -- use tinyint here since we want to use this data for an option list
--@TEAMLEADEROPTIONAPPROVETEAMMEMBERS bit = null output,
@COMPANIESFUNDRAISE bit = null output,
@COMPANYTEAMSAPPROVEBYEVENTADMIN bit = null output,
@COMPANYLEADERAPPOINTCOMPANYCOLEADERS tinyint = null output,
--@COMPANYLEADERAPPROVETEAMS tinyint = null output, -- use tinyint here since we want to use this data for an option list
@COMPANYNAMECHANGEAFTERREG bit = null output,
@INDIVIDUALREGOPTIONS int = null output,
@HOUSEHOLDREGOPTIONS int = null output,
@TEAMREGOPTIONS int = null output,
@COMPANYREGOPTIONS int = null output,
@HOUSEHOLDMEMBERSLIMIT int= null output,
@TEAMMEMBERSLIMIT int= null output,
@COMPANYTEAMSLIMIT int= null output,
@COMPANYTEAMMEMBERSLIMIT int= null output,
@PARTICIPANTSCANREACTIVATETEAMS bit= null output,
@FORMERTEAMCANREACTIVATETEAMSCODE tinyint= null output,
@PARTICIPANTSCANREACTIVATECOMPANYTEAMS bit= null output,
@FORMERCOMPANYCANREACTIVATETEAMSCODE tinyint= null output,
@PARTICIPANTSCANREACTIVATEHOUSEHOLDS bit= null output,
@FORMERHOUSEHOLDCANREACTIVATEHOUSEHOLDCODE tinyint= null output,
@HASPREVIOUSEVENTLINK bit = null output
)
as
set nocount on;
declare @HOUSEHOLDCOUNT int,
@TEMMEMBERSCOUNT int,
@COMPANYTEAMSCOUNT int,
@COMPANYMEMBERSCOUNT int
-- be sure to set these, in case the select returns no rows
set @DATALOADED = 0
set @TSLONG = 0
-- populate the output parameters, which correspond to fields on the form. Note that
-- we set @DATALOADED = 1 to indicate that the load was successful. Otherwise, the system
-- will display a "no data loaded" message. Also note that we fetch the TSLONG so that concurrency
-- can be considered.
select
@DATALOADED = 1,
@TSLONG = EC.TSLONG,
@INDIVIDUALSFUNDRAISE = EC.INDIVIDUALSFUNDRAISE,
@HOUSEHOLDSFUNDRAISE = EC.HOUSEHOLDSFUNDRAISE,
--@HOUSEHOLDAPPROVEBYEVENTADMIN = EC.HOUSEHOLDAPPROVEBYEVENTADMIN,
@HOUSEHOLDLEADERAPPOINTHOUSEHOLDCOLEADERS = EC.HOUSEHOLDLEADERAPPOINTHOUSEHOLDCOLEADERS,
@HOUSEHOLDSJOINTEAMS = EC.HOUSEHOLDSJOINTEAMS,
@TEAMSFUNDRAISE = EC.TEAMSFUNDRAISE,
@TEAMSREQUESTFUNDRAISE = EC.TEAMSREQUESTFUNDRAISE,
@TEAMNAMECHANGEAFTERREG = EC.TEAMNAMECHANGEAFTERREG,
@TEAMLEADERAPPOINTTEAMCOLEADERS = EC.TEAMLEADERAPPOINTTEAMCOLEADERS,
--@TEAMLEADERAPPROVETEAMMEMBERS = CASE WHEN EC.TEAMLEADERAPPROVETEAMMEMBERS = 0 AND EC.TEAMLEADEROPTIONAPPROVETEAMMEMBERS = 0 THEN 2 WHEN EC.TEAMLEADERAPPROVETEAMMEMBERS = 1 THEN 1 ELSE 0 END,
--@TEAMLEADEROPTIONAPPROVETEAMMEMBERS = EC.TEAMLEADEROPTIONAPPROVETEAMMEMBERS,
@COMPANIESFUNDRAISE = EC.COMPANIESFUNDRAISE,
@COMPANYTEAMSAPPROVEBYEVENTADMIN = EC.COMPANYTEAMSAPPROVEBYEVENTADMIN,
@COMPANYLEADERAPPOINTCOMPANYCOLEADERS = EC.COMPANYLEADERAPPOINTCOMPANYCOLEADERS,
--@COMPANYLEADERAPPROVETEAMS = CASE WHEN EC.COMPANYLEADERAPPROVETEAMS = 0 AND EC.COMPANYLEADEROPTIONAPPROVETEAMS = 0 THEN 2 WHEN EC.COMPANYLEADERAPPROVETEAMS = 1 THEN 1 ELSE 0 END,
@COMPANYNAMECHANGEAFTERREG = EC.COMPANYNAMECHANGEAFTERREG,
@HOUSEHOLDMEMBERSLIMIT= HOUSEHOLDMEMBERSLIMIT,
@TEAMMEMBERSLIMIT= TEAMMEMBERSLIMIT,
@COMPANYTEAMSLIMIT= COMPANYTEAMSLIMIT,
@COMPANYTEAMMEMBERSLIMIT= COMPANYTEAMMEMBERSLIMIT,
@PARTICIPANTSCANREACTIVATETEAMS= PARTICIPANTSCANREACTIVATETEAMS,
@FORMERTEAMCANREACTIVATETEAMSCODE= FORMERTEAMCANREACTIVATETEAMSCODE,
@PARTICIPANTSCANREACTIVATECOMPANYTEAMS= PARTICIPANTSCANREACTIVATECOMPANYTEAMS,
@FORMERCOMPANYCANREACTIVATETEAMSCODE= FORMERCOMPANYCANREACTIVATETEAMSCODE,
@PARTICIPANTSCANREACTIVATEHOUSEHOLDS = PARTICIPANTSCANREACTIVATEHOUSEHOLDS,
@FORMERHOUSEHOLDCANREACTIVATEHOUSEHOLDCODE = FORMERHOUSEHOLDCANREACTIVATEHOUSEHOLDCODE
from dbo.EVENTTEAMFAFCONFIG EC
where EVENTID = @ID
select @HOUSEHOLDCOUNT = MAXHOUSEHOLD,
@TEMMEMBERSCOUNT = MAXTEAMMEMBERS,
@COMPANYTEAMSCOUNT = MAXCOMPANYTEAMS,
@COMPANYMEMBERSCOUNT = MAXCOMPANYMEMBERS
from dbo.UFN_FAF_GROUPCOUNT_BY_EVENTID(@ID)
select @INDIVIDUALREGOPTIONS = max(CASE WHEN F.ISREGTYPEAVAILABLEINDIVIDUAL = 1 THEN 1 ELSE 0 END),
@HOUSEHOLDREGOPTIONS = max(CASE WHEN (F.ISREGTYPEAVAILABLEFAMILYMEMBER= 1 or F.ISREGTYPEAVAILABLEHEADHOUSEHOLD= 1 or @HOUSEHOLDCOUNT > 0) THEN 1 else 0 END),
@TEAMREGOPTIONS = max(CASE WHEN (F.ISREGTYPEAVAILABLETEAMLEADER= 1 or F.ISREGTYPEAVAILABLETEAMMEMBER= 1 or @TEMMEMBERSCOUNT > 0) THEN 1 else 0 END),
@COMPANYREGOPTIONS = max(CASE WHEN F.ISREGTYPEAVAILABLECOMPANYLEADER= 1 or @COMPANYTEAMSCOUNT > 0 or @COMPANYMEMBERSCOUNT > 0 THEN 1 ELSE 0 END)
from dbo.EVENTPRICE E
inner join dbo.FAFREGISTRATIONTYPE F
on E.ID = F.EVENTPRICEID
where E.EVENTID = @ID
group by E.EVENTID
select @HASPREVIOUSEVENTLINK = case when PRIORYEAREVENTID is not null then 1 else 0 end from dbo.EVENTEXTENSION where EVENTID = @ID
return 0;