USP_DATAFORMTEMPLATE_EDITLOAD_REGISTRANT_REGISTRATION
Load current selected registrant registration.
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. |
@CONSTITUENTID | uniqueidentifier | INOUT | Registrant name |
@CONSTITUENTIDORIGINAL | uniqueidentifier | INOUT | |
@APPURL | nvarchar(1024) | INOUT | |
@PERSONALPAGEURL | nvarchar(100) | INOUT | Personal page URL |
@PERSONALVANITYID | int | INOUT | |
@PERSONALPAGEURLORIGINAL | nvarchar(100) | INOUT | |
@GROUPPAGEURL | nvarchar(100) | INOUT | Group page URL |
@GROUPVANITYID | int | INOUT | |
@GROUPPAGEURLORIGINAL | nvarchar(100) | INOUT | |
@ROLECODE | tinyint | INOUT | Fundraising role name |
@ROLECODEORIGINAL | tinyint | INOUT | |
@GROUPID | uniqueidentifier | INOUT | Group name |
@GROUPIDORIGINAL | uniqueidentifier | INOUT | |
@LEADERS | nvarchar(200) | INOUT | Leaders |
@REGISTRATIONOPTIONID | uniqueidentifier | INOUT | Registration option name and description |
@REGISTRATIONOPTIONIDORIGINAL | uniqueidentifier | INOUT | |
@FEE | money | INOUT | Registration fee |
@WAIVEREGISTRATIONFEE | bit | INOUT | Waive registration fee |
@BENEFITS | nvarchar(200) | INOUT | Benefits |
@WAIVEBENEFITS | bit | INOUT | Waive benefits |
@FUNDRAISINGGOAL | money | INOUT | Minimum fundraising goal |
@TARGETFUNDRAISINGGOAL | money | INOUT | Target fundraising goal |
@PARTICIPANTRECRUITGOAL | int | INOUT | Number of participants to recruit |
@DONORRETENTIONGOAL | decimal(7, 2) | INOUT | Percentage of donors to retain |
@COMMUNICATIONGOAL | int | INOUT | Number of communications to send |
@GROUPFUNDRAISINGGOAL | money | INOUT | Minimum fundraising goal |
@GROUPPARTICIPANTRECRUITMENTGOAL | int | INOUT | Number of participants to recruit |
@GROUPDONORRETENTIONGOAL | decimal(7, 2) | INOUT | Percentage of donors to retain |
@GROUPTEAMMEMBERSGOAL | int | INOUT | Number of Team members |
@GROUPTEAMMEMBERSRETENTIONGOAL | decimal(7, 2) | INOUT | Percentage of team members to retain |
@GROUPTEAMSGOAL | int | INOUT | Number of Teams |
@GROUPTEAMSRETENTIONGOAL | decimal(7, 2) | INOUT | Percentage of teams to retain |
@GROUPCOMMUNICATIONGOAL | int | INOUT | Number of communications to send |
@ROLE | nvarchar(20) | INOUT | Role name |
@EVENTID | uniqueidentifier | INOUT | EventID |
@CLIENTSITESID | int | INOUT | |
@ORGANIZATIONCONSTITUENTID | uniqueidentifier | INOUT | |
@PARENTGROUPID | uniqueidentifier | INOUT | |
@PARENTGROUPIDORIGINAL | uniqueidentifier | INOUT | |
@APPEALID | uniqueidentifier | INOUT |
Definition
Copy
CREATE procedure dbo.USP_DATAFORMTEMPLATE_EDITLOAD_REGISTRANT_REGISTRATION(
@ID uniqueidentifier,
@DATALOADED bit = 0 output,
@TSLONG bigint = 0 output,
@CONSTITUENTID uniqueidentifier = null output,
@CONSTITUENTIDORIGINAL uniqueidentifier = null output,
@APPURL nvarchar(1024) = null output,
@PERSONALPAGEURL nvarchar(100) = null output,
@PERSONALVANITYID int = null output,
@PERSONALPAGEURLORIGINAL nvarchar(100) = null output,
@GROUPPAGEURL nvarchar(100) = null output,
@GROUPVANITYID int = null output,
@GROUPPAGEURLORIGINAL nvarchar(100) = null output,
@ROLECODE tinyint = null output,
@ROLECODEORIGINAL tinyint = null output,
@GROUPID uniqueidentifier = null output,
@GROUPIDORIGINAL uniqueidentifier = null output,
@LEADERS nvarchar(200) = null output,
@REGISTRATIONOPTIONID uniqueidentifier = null output,
@REGISTRATIONOPTIONIDORIGINAL uniqueidentifier = null output,
@FEE money = null output,
@WAIVEREGISTRATIONFEE bit= null output,
@BENEFITS nvarchar(200) = null output,
@WAIVEBENEFITS bit= null output,
@FUNDRAISINGGOAL money = null output,
@TARGETFUNDRAISINGGOAL money = null output,
@PARTICIPANTRECRUITGOAL int = null output,
@DONORRETENTIONGOAL decimal(7,2) = null output,
@COMMUNICATIONGOAL int = null output,
@GROUPFUNDRAISINGGOAL money = null output,
@GROUPPARTICIPANTRECRUITMENTGOAL int = null output,
@GROUPDONORRETENTIONGOAL decimal(7,2) = null output,
@GROUPTEAMMEMBERSGOAL int = null output,
@GROUPTEAMMEMBERSRETENTIONGOAL decimal(7,2) = null output,
@GROUPTEAMSGOAL int = null output,
@GROUPTEAMSRETENTIONGOAL decimal(7,2) = null output,
@GROUPCOMMUNICATIONGOAL int = null output,
@ROLE nvarchar(20) = null output,
@EVENTID uniqueidentifier = null output,
@CLIENTSITESID int = null output,
@ORGANIZATIONCONSTITUENTID uniqueidentifier = null output,
@PARENTGROUPID uniqueidentifier = null output,
@PARENTGROUPIDORIGINAL uniqueidentifier = null output,
@APPEALID uniqueidentifier = null output
)
as
set nocount on;
-- be sure to set these, in case the select returns no rows
set @DATALOADED = 0
set @TSLONG = 0
DECLARE @TEAMFUNDRAISINGTEAMID uniqueidentifier,
@GROUPTYPECODE tinyint
SELECT @EVENTID = R.EVENTID FROM dbo.REGISTRANT R WHERE R.ID = @ID
select @APPEALID = APPEALID from dbo.EVENT where ID = @EVENTID
SELECT @DATALOADED = 1,
@TSLONG = R.TSLONG,
@CONSTITUENTID = C.ID,
@CONSTITUENTIDORIGINAL = C.ID,
@ROLECODE = CASE
WHEN RL.[ROLE] = 'Company leader' THEN 0
WHEN RL.[ROLE] = 'Team leader' THEN 1
WHEN RL.[ROLE] = 'Team member' THEN 2
WHEN RL.[ROLE] = 'Head of household' THEN 3
WHEN RL.[ROLE] = 'Household member' THEN 4
WHEN RL.[ROLE] = 'Individual' THEN 5
END,
@ROLECODEORIGINAL = @ROLECODE,
@ROLE = RL.[ROLE],
@REGISTRATIONOPTIONID = EP.ID,
@REGISTRATIONOPTIONIDORIGINAL = EP.ID,
@FEE = RR.AMOUNT,
@WAIVEREGISTRATIONFEE = (CASE WHEN EP.AMOUNT = 0 AND RR.AMOUNT = 0 THEN 1 ELSE 0 END),
@BENEFITS = RB.BENEFITS,
@WAIVEBENEFITS = R.BENEFITSWAIVED,
@FUNDRAISINGGOAL = RE.FUNDRAISINGGOAL,
@TARGETFUNDRAISINGGOAL = RE.TARGETFUNDRAISINGGOAL,
@PARTICIPANTRECRUITGOAL = RE.MEMBERECRUITMENTGOAL,
@DONORRETENTIONGOAL = RE.DONORRETENTIONGOAL * 100,
@COMMUNICATIONGOAL = RE.COMMUNICATIONGOAL,
@TEAMFUNDRAISINGTEAMID = RL.TEAMFUNDRAISINGTEAMID,
@ORGANIZATIONCONSTITUENTID = RE.ORGANIZATIONCONSTITUENTID
FROM dbo.REGISTRANT R
join dbo.CONSTITUENT C ON R.CONSTITUENTID = C.ID
join dbo.REGISTRANTEXTENSION RE ON RE.REGISTRANTID = R.ID
join dbo.REGISTRANTREGISTRATION RR ON RR.REGISTRANTID = R.ID
join dbo.EVENTPRICE EP ON RR.EVENTPRICEID = EP.ID
join dbo.UFN_REGISTRANT_GETFAFROLE(@EVENTID, NULL) RL ON RL.REGISTRANTID = R.ID
left join (select RB.REGISTRANTID, dbo.UDA_BUILDLIST(B.NAME) as BENEFITS
from REGISTRANTBENEFIT RB
left join BENEFIT B on RB.BENEFITID = B.ID
where RB.REGISTRANTID = @ID and RB.BENEFITTYPECODE = 0 --only show registration option benefits
group by RB.REGISTRANTID) RB ON RB.REGISTRANTID = R.ID
WHERE R.ID = @ID
SELECT @GROUPID = T.ID,
@GROUPIDORIGINAL = T.ID,
@GROUPFUNDRAISINGGOAL = T.GOAL,
@GROUPPARTICIPANTRECRUITMENTGOAL = TE.PARTICIPANTGOAL,
@GROUPDONORRETENTIONGOAL = TE.DONORRETENTIONGOAL * 100,
@GROUPCOMMUNICATIONGOAL = TE.COMMUNICATIONGOAL,
@GROUPTEAMMEMBERSGOAL = TE.TEAMMEMBERGOAL,
@GROUPTEAMMEMBERSRETENTIONGOAL = TE.PCTTEAMMEMBERRETENSION * 100,
@GROUPTEAMSGOAL = TE.TEAMRECRUITMENTGOAL,
@GROUPTEAMSRETENTIONGOAL = TE.PCTTEAMSRETENSION * 100,
@LEADERS = TFTCs.LEADER,
@GROUPTYPECODE = TE.TYPECODE,
@PARENTGROUPID = T.PARENTTEAMID,
@PARENTGROUPIDORIGINAL = T.PARENTTEAMID
FROM dbo.TEAMFUNDRAISINGTEAM T
join dbo.TEAMEXTENSION TE ON T.ID = TE.TEAMFUNDRAISINGTEAMID
left join (select dbo.UDA_BUILDLIST(C.NAME) as LEADER, iTX.TEAMFUNDRAISINGTEAMID from TEAMEXTENSION iTX
left join TEAMFUNDRAISINGTEAMCAPTAIN tftc on iTX.TEAMFUNDRAISINGTEAMID = tftc.TEAMFUNDRAISINGTEAMID
left join CONSTITUENT c on tftc.CONSTITUENTID = c.ID
group by iTX.TEAMFUNDRAISINGTEAMID
) TFTCs on TFTCs.TEAMFUNDRAISINGTEAMID = T.ID
WHERE T.ID = @TEAMFUNDRAISINGTEAMID
--IF @ROLECODE = 3
-- SELECT @GROUPID = T.ID,
-- @FUNDRAISINGGOAL = T.GOAL,
-- @PARTICIPANTRECRUITGOAL = TE.PARTICIPANTGOAL,
-- @DONORRETENTIONGOAL = TE.DONORRETENTIONGOAL * 100,
-- @COMMUNICATIONGOAL = TE.COMMUNICATIONGOAL,
-- @TARGETFUNDRAISINGGOAL = TE.TARGETFUNDRAISINGGOAL
--FROM dbo.TEAMFUNDRAISINGTEAM T (NOLOCK)
-- INNER JOIN dbo.TEAMEXTENSION TE (NOLOCK)
--ON T.ID = TE.TEAMFUNDRAISINGTEAMID
--WHERE T.ID = @TEAMFUNDRAISINGTEAM
select @APPURL = Value, @CLIENTSITESID = CLIENTSITESID from CMSSITESETTING where CLIENTSITESID in (select CLIENTSITESID from dbo.EVENTEXTENSION where EVENTID = @EVENTID) and ENUMID = 11
select @PERSONALPAGEURL = VanityURL, @PERSONALPAGEURLORIGINAL = VanityURL, @PERSONALVANITYID = vURL.ID from VanityURL vURL
join FAFFRIENDLYURLPARAMS vFAF on vFAF.SEQUENCEID = vURL.RealmID and vURL.RealmTypeID = 7 and vFAF.PAGETYPE = 0
where PARTICIPANTID = @ID
if @TEAMFUNDRAISINGTEAMID is not null
select @GROUPPAGEURL = VanityURL, @GROUPPAGEURLORIGINAL = VanityURL, @GROUPVANITYID = vURL.ID from VanityURL vURL
join FAFFRIENDLYURLPARAMS vFAF on vFAF.SEQUENCEID = vURL.RealmID and vURL.RealmTypeID = 7 and vFAF.PAGETYPE = @GROUPTYPECODE
where PARTICIPANTID = @TEAMFUNDRAISINGTEAMID
return 0;