USP_DATALIST_RELATIONSHIPTREECONSTITUENTGROUPMEMBER
Lists all active members of a constituent group for a relationship tree.
Parameters
Parameter | Parameter Type | Mode | Description |
---|---|---|---|
@CONSTITUENTID | uniqueidentifier | IN | Input parameter indicating the context ID for the data list. |
@CURRENTAPPUSERID | uniqueidentifier | IN | Input parameter indicating the ID of the current user. |
Definition
Copy
create procedure dbo.USP_DATALIST_RELATIONSHIPTREECONSTITUENTGROUPMEMBER
(
@CONSTITUENTID uniqueidentifier,
@CURRENTAPPUSERID uniqueidentifier
) as
set nocount on;
declare @CURRENTDATE datetime;
set @CURRENTDATE = dbo.UFN_DATE_GETEARLIESTTIME(getdate());
declare @PRIMARYMEMBERID uniqueidentifier;
select @PRIMARYMEMBERID = GM.MEMBERID from dbo.GROUPMEMBER GM where GM.GROUPID = @CONSTITUENTID and GM.ISPRIMARY = 1;
select
null,
GM.MEMBERID,
case
when GM.ISPRIMARY = 1 then 'Primary Group Contact'
else ( select dbo.UDA_BUILDLIST(distinct RTC.DESCRIPTION)
from dbo.RELATIONSHIP R
join dbo.RELATIONSHIPTYPECODE RTC
on R.RELATIONSHIPTYPECODEID = RTC.ID
where C.ID = R.RELATIONSHIPCONSTITUENTID
and R.RECIPROCALCONSTITUENTID = @PRIMARYMEMBERID
)
end RELATIONSHIP,
(
rtrim(C.NAME + ' ' +
coalesce(
replace(
stuff(
(select '' + STATUS from
(select ',(Deceased)' STATUS
from dbo.DECEASEDCONSTITUENT DC
where DC.ID = C.ID
union all
select ',(Inactive)' STATUS
from dbo.CONSTITUENT
where CONSTITUENT.ID = C.ID
and CONSTITUENT.ISINACTIVE=1
) as SUBQ for xml path(''))
,1,1,'')
, '),(', ', ')
,'')
)
) as NAME,
C.ISINACTIVE,
(select count(ID) from dbo.RELATIONSHIP R where R.RELATIONSHIPCONSTITUENTID = GM.MEMBERID) COUNT,
0 ISSPOUSE,
C.ISORGANIZATION,
dbo.UFN_SECURITY_APPUSER_GRANTED_DATALIST_FORCONSTIT(@CURRENTAPPUSERID,'9297f3a4-c0c5-4947-9cb2-f1d9eb15b155', GM.MEMBERID) LOADDATALIST,
dbo.UFN_SECURITY_APPUSER_GRANTED_FORM_FORCONSTIT(@CURRENTAPPUSERID,'0C836902-A398-47a0-91EB-8B66E434148E', GM.MEMBERID) LOADPAGE,
C.ISGROUP,
case when GD.GROUPTYPECODE = 0 then 1 else 0 end ISHOUSEHOLD
from
dbo.GROUPMEMBER GM
inner join
dbo.CONSTITUENT C on GM.MEMBERID = C.ID
left outer join
dbo.GROUPDATA GD on GD.ID = GM.MEMBERID
left outer join
dbo.GROUPMEMBERDATERANGE as GMDR on GM.ID = GMDR.GROUPMEMBERID
where
GM.GROUPID = @CONSTITUENTID
and ((GMDR.DATEFROM is null and (GMDR.DATETO is null or GMDR.DATETO > @CURRENTDATE))
or (GMDR.DATETO is null and (GMDR.DATEFROM is null or GMDR.DATEFROM <= @CURRENTDATE))
or (GMDR.DATEFROM <= @CURRENTDATE and GMDR.DATETO > @CURRENTDATE))