UFN_NUMBERTEAMMEMBERS_GROUP
Calculate the number of team members to date by a given team
Return
Return Type |
---|
table |
Parameters
Parameter | Parameter Type | Mode | Description |
---|---|---|---|
@TEAMFUNDRAISINGTEAMID | uniqueidentifier | IN |
Definition
Copy
CREATE function [dbo].[UFN_NUMBERTEAMMEMBERS_GROUP]
(
@TEAMFUNDRAISINGTEAMID as uniqueidentifier
)
returns TABLE
as
return
With [All] (TeamID)
As
(
select PL.TEAMID
from dbo.UFN_FAF_GROUPPARTICIPANTSLIST(NULL, (select TX.EVENTID from TEAMEXTENSION TX where TX.TEAMFUNDRAISINGTEAMID = @TEAMFUNDRAISINGTEAMID) ,NULL) PL
join dbo.REGISTRANT R ON PL.ID = R.CONSTITUENTID and PL.EVENTID = R.EVENTID
join dbo.UFN_REGISTRANT_GETFAFROLE((select TX.EVENTID from TEAMEXTENSION TX where TX.TEAMFUNDRAISINGTEAMID = @TEAMFUNDRAISINGTEAMID), null) PARTICIPANTROLE on PARTICIPANTROLE.REGISTRANTID = R.ID
join dbo.REGISTRANTEXTENSION RX ON R.ID = RX.REGISTRANTID
left join dbo.TEAMFUNDRAISINGTEAM TFT on TFT.ID = PL.TEAMID
left join dbo.TEAMFUNDRAISINGTEAMCAPTAIN TFTC ON TFTC.CONSTITUENTID = PL.ID and TFTC.TEAMFUNDRAISINGTEAMID = PL.TEAMID
left join dbo.EMAILADDRESS EA on PL.ID = EA.CONSTITUENTID and EA.ISPRIMARY = 1
left join dbo.PHONE P on PL.ID = P.CONSTITUENTID and P.ISPRIMARY = 1
Where PL.TEAMID = @TEAMFUNDRAISINGTEAMID
Union all
select TFT.ID
from dbo.TEAMFUNDRAISINGTEAM TFT
join dbo.TEAMEXTENSION TX on TFT.ID = TX.TEAMFUNDRAISINGTEAMID
join dbo.CONSTITUENT C on TX.TEAMCONSTITUENTID = C.ID
where TFT.PARENTTEAMID = @TEAMFUNDRAISINGTEAMID
)
select TeamID
from [All]