USP_DATALIST_CONSTITUENTMEMBERSHIPSDOCUMENTATION

This datalist returns all documentation for all of a constituent's memberships.

Parameters

Parameter Parameter Type Mode Description
@CONSTITUENTID uniqueidentifier IN Input parameter indicating the context ID for the data list.
@DOCUMENTATIONTYPECODE tinyint IN Documentation type
@TITLE nvarchar(50) IN Title
@CURRENTAPPUSERID uniqueidentifier IN Input parameter indicating the ID of the current user.
@SITEFILTERMODE tinyint IN Sites
@SITESSELECTED xml IN
@SECURITYFEATUREID uniqueidentifier IN Input parameter indicating the ID of the feature to use for site security checking.
@SECURITYFEATURETYPE tinyint IN Input parameter indicating the type of the feature to use for site security checking.

Definition

Copy


                CREATE procedure dbo.USP_DATALIST_CONSTITUENTMEMBERSHIPSDOCUMENTATION
                (
                    @CONSTITUENTID uniqueidentifier = null,
                    @DOCUMENTATIONTYPECODE tinyint = null,
                    @TITLE nvarchar(50) = '',
                    @CURRENTAPPUSERID uniqueidentifier = null,
                    @SITEFILTERMODE tinyint = 0,
                    @SITESSELECTED xml = null,
                    @SECURITYFEATUREID uniqueidentifier = null,
                    @SECURITYFEATURETYPE tinyint = null
                )
                as
                    set nocount on;

                    select    
                        MEMBERNOTE.ID,
                        'f6651922-9ec2-4449-a214-c773f6eae072' as [VIEWFORMID],
                        MEMBER.ID,
                        (dbo.UFN_MEMBERSHIPPROGRAM_GETNAME(MEMBERSHIP.MEMBERSHIPPROGRAMID) + ' - ' + dbo.UFN_MEMBERSHIPLEVEL_GETNAME(MEMBERSHIP.MEMBERSHIPLEVELID)),
                        0 as [DOCUMENTATIONTYPECODE],
                        null as [MEDIAURL],
                        null as [FILENAME],
                        null as [FILEFIELDID],
                        'Note' as [DOCUMENTATIONTYPE],
                        MEMBERNOTE.DATEENTERED,
                        MEMBERNOTETYPECODE.DESCRIPTION as [TYPE],
                        MEMBERNOTE.TITLE,
                        NF.NAME,
                        dbo.UFN_ANNOTATION_ANNOTATIONEXISTS('Member note',MEMBERNOTE.ID) as ANNOTATIONEXISTS,
                        SITE.NAME,
                        MEMBERSHIP.ID
                    from
                        dbo.MEMBERNOTE
                        inner join dbo.MEMBERNOTETYPECODE on MEMBERNOTETYPECODE.ID = MEMBERNOTE.MEMBERNOTETYPECODEID    
                        inner join dbo.MEMBERSHIP on MEMBERSHIP.ID = MEMBERNOTE.MEMBERSHIPID
                        inner join dbo.MEMBER on MEMBER.MEMBERSHIPID = MEMBERSHIP.ID
                        inner join dbo.MEMBERSHIPPROGRAM on MEMBERSHIP.MEMBERSHIPPROGRAMID = MEMBERSHIPPROGRAM.ID
                        left join dbo.SITE on SITE.ID = MEMBERSHIPPROGRAM.SITEID
                                                outer apply dbo.UFN_CONSTITUENT_DISPLAYNAME(MEMBERNOTE.AUTHORID) NF
                    where 
                        (dbo.UFN_APPUSER_ISSYSADMIN(@CURRENTAPPUSERID) = 1 or exists (select 1 from dbo.UFN_SITESFORUSERONFEATURE(@CURRENTAPPUSERID,@SECURITYFEATUREID,@SECURITYFEATURETYPE) where SITEID=[MEMBERSHIPPROGRAM].[SITEID] or (SITEID is null and [MEMBERSHIPPROGRAM].[SITEID] is null)))
                        and (@SITEFILTERMODE = 0
                            or MEMBERSHIPPROGRAM.SITEID in
                                select SITEID
                                from dbo.UFN_SITE_BUILDDATALISTSITEFILTER (@CURRENTAPPUSERID, @SITEFILTERMODE, @SITESSELECTED)
                            )
                            or @CURRENTAPPUSERID is null
                        ) and
                        MEMBER.CONSTITUENTID = @CONSTITUENTID and
                        (@DOCUMENTATIONTYPECODE is null or @DOCUMENTATIONTYPECODE = 0) and
                        (@TITLE = '' or MEMBERNOTE.TITLE like @TITLE + '%')    
                    union all    
                    select    
                        MEMBERMEDIALINK.ID,
                        '53a9494e-27c4-48d7-a78a-a1bbf59e02d7' as [VIEWFORMID],
                        MEMBER.ID,
                        (dbo.UFN_MEMBERSHIPPROGRAM_GETNAME(MEMBERSHIP.MEMBERSHIPPROGRAMID) + ' - ' + dbo.UFN_MEMBERSHIPLEVEL_GETNAME(MEMBERSHIP.MEMBERSHIPLEVELID)),
                        1 as [DOCUMENTATIONTYPECODE],
                        MEMBERMEDIALINK.MEDIAURL,
                        null,
                        null,
                        'Media link' as [DOCUMENTATIONTYPE],
                        MEMBERMEDIALINK.DATEENTERED,
                        MEMBERMEDIALINKTYPECODE.DESCRIPTION as [TYPE],
                        MEMBERMEDIALINK.TITLE,
                        NF.NAME,
                        cast(0 as bit) as ANNOTATIONEXISTS,
                        SITE.NAME,
                        MEMBERSHIP.ID
                    from
                        dbo.MEMBERMEDIALINK
                        inner join dbo.MEMBERMEDIALINKTYPECODE    on MEMBERMEDIALINKTYPECODE.ID = MEMBERMEDIALINK.MEMBERMEDIALINKTYPECODEID                            
                        inner join dbo.MEMBERSHIP on MEMBERSHIP.ID = MEMBERMEDIALINK.MEMBERSHIPID                        
                        inner join dbo.MEMBER on MEMBER.MEMBERSHIPID = MEMBERSHIP.ID
                        inner join dbo.MEMBERSHIPPROGRAM on MEMBERSHIP.MEMBERSHIPPROGRAMID = MEMBERSHIPPROGRAM.ID
                        left join dbo.SITE on SITE.ID = MEMBERSHIPPROGRAM.SITEID
                        outer apply dbo.UFN_CONSTITUENT_DISPLAYNAME(MEMBERMEDIALINK.AUTHORID) NF
                    where 
                        (dbo.UFN_APPUSER_ISSYSADMIN(@CURRENTAPPUSERID) = 1 or exists (select 1 from dbo.UFN_SITESFORUSERONFEATURE(@CURRENTAPPUSERID,@SECURITYFEATUREID,@SECURITYFEATURETYPE) where SITEID=[MEMBERSHIPPROGRAM].[SITEID] or (SITEID is null and [MEMBERSHIPPROGRAM].[SITEID] is null)))
                        and (@SITEFILTERMODE = 0
                            or MEMBERSHIPPROGRAM.SITEID in
                                select SITEID
                                from dbo.UFN_SITE_BUILDDATALISTSITEFILTER (@CURRENTAPPUSERID, @SITEFILTERMODE, @SITESSELECTED)
                            )
                            or @CURRENTAPPUSERID is null
                        ) and
                        MEMBER.CONSTITUENTID = @CONSTITUENTID and
                        (@DOCUMENTATIONTYPECODE is null or @DOCUMENTATIONTYPECODE = 1) and
                        (@TITLE = '' or MEMBERMEDIALINK.TITLE like @TITLE + '%')        
                    union all    
                    select    
                        MEMBERATTACHMENT.ID,
                        'a5ee4793-6f46-4a05-87ec-43c2da5ea3ca' as [VIEWFORMID],
                        MEMBER.ID,
                        (dbo.UFN_MEMBERSHIPPROGRAM_GETNAME(MEMBERSHIP.MEMBERSHIPPROGRAMID) + ' - ' + dbo.UFN_MEMBERSHIPLEVEL_GETNAME(MEMBERSHIP.MEMBERSHIPLEVELID)),
                        2 as [DOCUMENTATIONTYPECODE],
                        null,
                        MEMBERATTACHMENT.FILENAME,
                        'FILE',
                        'Attachment' as [DOCUMENTATIONTYPE],
                        MEMBERATTACHMENT.DATEENTERED,
                        MEMBERATTACHMENTTYPECODE.DESCRIPTION as [TYPE],
                        MEMBERATTACHMENT.TITLE,
                        NF.NAME,
                        cast(0 as bit) as ANNOTATIONEXISTS,
                        SITE.NAME,
                        MEMBERSHIP.ID
                    from
                        dbo.MEMBERATTACHMENT
                        inner join dbo.MEMBERATTACHMENTTYPECODE on MEMBERATTACHMENTTYPECODE.ID = MEMBERATTACHMENT.MEMBERATTACHMENTTYPECODEID                            
                        inner join dbo.MEMBERSHIP on MEMBERSHIP.ID = MEMBERATTACHMENT.MEMBERSHIPID
                        inner join dbo.MEMBER on MEMBER.MEMBERSHIPID = MEMBERSHIP.ID
                        inner join dbo.MEMBERSHIPPROGRAM on MEMBERSHIP.MEMBERSHIPPROGRAMID = MEMBERSHIPPROGRAM.ID
                        left join dbo.SITE on SITE.ID = MEMBERSHIPPROGRAM.SITEID
                        outer apply dbo.UFN_CONSTITUENT_DISPLAYNAME(MEMBERATTACHMENT.AUTHORID) NF
                    where 
                        (dbo.UFN_APPUSER_ISSYSADMIN(@CURRENTAPPUSERID) = 1 or exists (select 1 from dbo.UFN_SITESFORUSERONFEATURE(@CURRENTAPPUSERID,@SECURITYFEATUREID,@SECURITYFEATURETYPE) where SITEID=[MEMBERSHIPPROGRAM].[SITEID] or (SITEID is null and [MEMBERSHIPPROGRAM].[SITEID] is null)))
                        and (@SITEFILTERMODE = 0
                            or MEMBERSHIPPROGRAM.SITEID in
                                select SITEID
                                from dbo.UFN_SITE_BUILDDATALISTSITEFILTER (@CURRENTAPPUSERID, @SITEFILTERMODE, @SITESSELECTED)
                            )
                            or @CURRENTAPPUSERID is null
                        ) and
                        MEMBER.CONSTITUENTID = @CONSTITUENTID and
                        (@DOCUMENTATIONTYPECODE is null or @DOCUMENTATIONTYPECODE = 2) and
                        (@TITLE = '' or MEMBERATTACHMENT.TITLE like @TITLE + '%')        
                    order by
                        DATEENTERED desc;