USP_DATALIST_FUNDRAISINGGROUPMERGEDATAPREVEVT
Returns fundraising group merge data previous event
Parameters
Parameter | Parameter Type | Mode | Description |
---|---|---|---|
@EVENTID | uniqueidentifier | IN | Event ID |
@GROUPID | uniqueidentifier | IN | Group ID |
@ISPREVIOUSEVENT | bit | IN | IsPreviousEvent |
Definition
Copy
create procedure dbo.USP_DATALIST_FUNDRAISINGGROUPMERGEDATAPREVEVT
(
@EVENTID uniqueidentifier,
@GROUPID uniqueidentifier,
@ISPREVIOUSEVENT bit = 0 -- used for marketing message merge fields only
)
as
set nocount on;
declare @LYFundraisingGoal money, @LYFundraisingTotal money
--Get last year data
select @LYFundraisingGoal=LYRE.FUNDRAISINGGOAL
,@LYFundraisingTotal=dbo.UFN_REGISTRANT_GETDONATIONAMOUNT(LYR.ID, @EVENTID, LYTFT.ID, LYTE.TYPECODE, NULL)
from EVENTEXTENSION EEXT
left join dbo.EVENTEXTENSION LYET ON LYET.ID=EEXT.PRIORYEAREVENTID
left join dbo.EVENT LYEV ON LYEV.ID=LYET.EVENTID
left join dbo.TEAMFUNDRAISINGTEAM LYTFT ON LYTFT.APPEALID=LYEV.APPEALID
left join dbo.TEAMEXTENSION LYTE ON LYTE.TEAMFUNDRAISINGTEAMID=LYTFT.ID
left join dbo.TEAMFUNDRAISINGTEAMCAPTAIN LYTC on LYTFT.ID = LYTC.TEAMFUNDRAISINGTEAMID
left join dbo.REGISTRANT LYR on LYR.constituentid = LYTC.constituentID and LYR.eventID = LYEV.ID
left join dbo.RegistrantExtension LYRE on LYRE.registrantID = LYR.ID
where LYTE.TEAMCONSTITUENTID=@GROUPID
and EEXT.ID=@EVENTID
select
FGLYTotalAmountGoal = isnull(@LYFundraisingGoal,0)
, FGLYTotalAmountActual = case when ISNULL(@LYFundraisingGoal,0) =0 then 0 else convert(decimal,@LYFundraisingTotal)/@LYFundraisingGoal end
, FGLYNumberOfParticipantsToRecruit = null
, FGLYNumberOfParticipantsRecruited = null
, FGLYPercentageOfDonorsToRetain = null
, FGLYPercentageOfDonorsRetained = null
, FGLYNumberOfCommunicationsToSend = null
, FGLYNumberOfCommunicationsSent = null
, FGLYNumberOfTeamMembersGoal = null
, FGLYNumberOfTeamMembersActual = null
, FGLYPercentageOfTeamMembersToRetain = null
, FGLYPercentageOfTeamMembersRetained = null
, FGLYNumberOfTeamsGoal = null
, FGLYNumberOfTeamsActual = null
, FGLYPercentageOfTeamsToRetain = null
, FGLYPercentageOfTeamsRetained = null
, FGLYNumberOfCompaniesGoal = null
, FGLYNumberOfCompaniesActual = null
, FGLYPercentageOfCompaniesToRetain = null
, FGLYPercentageOfCompaniesRetained = null
, FGLYGroupTypeName = (CASE WHEN @ISPREVIOUSEVENT = 1 THEN TE.[Type] ELSE PrevTE.TYPE END)
from dbo.TEAMFUNDRAISINGTEAM T
inner join dbo.EVENT EV on T.APPEALID = EV.APPEALID
inner join dbo.EVENTEXTENSION EEXT on EV.ID = EEXT.EVENTID
left outer join dbo.TEAMEXTENSION TE on T.ID = TE.TEAMFUNDRAISINGTEAMID
left join dbo.EVENTEXTENSION PrevET on PrevET.EVENTID = EEXT.PRIORYEAREVENTID
left join dbo.TEAMEXTENSION PrevTE on PrevTE.EVENTID = PrevET.EVENTID and PrevTE.TEAMCONSTITUENTID = TE.TEAMCONSTITUENTID
where T.ID = @GROUPID