USP_DATALIST_GROUPMEMBERPREVIOUS

Displays previous group members

Parameters

Parameter Parameter Type Mode Description
@GROUPID uniqueidentifier IN Input parameter indicating the context ID for the data list.

Definition

Copy


                CREATE procedure dbo.USP_DATALIST_GROUPMEMBERPREVIOUS
                (
                    @GROUPID uniqueidentifier 
                )
                as
                    set nocount on;
                    declare @CURRENTDATEEARLIESTTIME date;
                    set @CURRENTDATEEARLIESTTIME = getdate();

                    declare @PRIMARYMEMBERID uniqueidentifier;
                    select  @PRIMARYMEMBERID = MEMBERID 
                        from dbo.GROUPMEMBER 
                        where GROUPID = @GROUPID
                        and ISPRIMARY = 1;

                    select distinct
                        GM.ID as GROUPMEMBERID,
                        GM.MEMBERID as CONSTITUENTID,
                        NF.NAME as NAME,
                        case when GM.ISPRIMARY = 1 
                            then ''
                            else (    select 
                                        dbo.UDA_BUILDLIST(distinct RTC.DESCRIPTION)
                                    from dbo.RELATIONSHIP R
                                    join dbo.RELATIONSHIPTYPECODE RTC
                                    on R.RELATIONSHIPTYPECODEID = RTC.ID
                                    where GM.MEMBERID = R.RELATIONSHIPCONSTITUENTID
                                    and R.RECIPROCALCONSTITUENTID = @PRIMARYMEMBERID
                                    )
                            end as RELATIONSHIPWITHPRIMARY,
                        GMDR.DATEFROM,
                        GMDR.DATETO,
                        GMDR.COMMENTS,
                        GMDR.ID as GROUPMEMBERDATERANGEID
                    from dbo.GROUPMEMBER as GM
                    outer apply dbo.UFN_CONSTITUENT_DISPLAYNAME(GM.MEMBERID) NF
                    left join dbo.GROUPMEMBERDATERANGE as GMDR on GM.ID = GMDR.GROUPMEMBERID
                    where (GMDR.DATETO is not null and GMDR.DATETO <= @CURRENTDATEEARLIESTTIME)
                    and GM.ID not in (select GROUPMEMBERID from dbo.GROUPMEMBERDATERANGE where DATETO is null)
                    and GM.GROUPID = @GROUPID
                    order by GMDR.DATEFROM, GMDR.DATETO