USP_SOLICITCODES_DATALIST

Solicit Code List

Parameters

Parameter Parameter Type Mode Description
@CURRENTAPPUSERID uniqueidentifier IN Input parameter indicating the ID of the current user.
@INCLUDEINACTIVE bit IN Include inactive
@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_SOLICITCODES_DATALIST
                    (
                        @CURRENTAPPUSERID uniqueidentifier,
                        @INCLUDEINACTIVE bit = 0,
                        @SITEFILTERMODE tinyint = 0,
                        @SITESSELECTED xml = null,
                        @SECURITYFEATUREID uniqueidentifier = null,
                        @SECURITYFEATURETYPE tinyint = null
                    )
                    as
                    set nocount on;

                    select 
                        SOLICITCODE.ID,
                        SOLICITCODE.DESCRIPTION,
                        coalesce(SITE.NAME, 'All sites'),
                        '',
                        SOLICITCODE.ACTIVE,
                        SOLICITCODE.EXCLUSION,
                        case 
                            when SOLICITCODE.SITEID is null 
                                then dbo.UFN_SITEALLOWEDFORUSERONFEATURE(@CURRENTAPPUSERID,null,@SECURITYFEATUREID,@SECURITYFEATURETYPE)
                            else 1
                        end ENABLEEDIT,
                        SOLICITCODE.EXCLUSIONCODE,
                        SOLICITCODE.CONSENTCODE,
                        SOLICITCODE.SOLICITCODECHANNELCODE,
                        SOLICITCODE.SITEID as SITEID
                    from 
                        dbo.SOLICITCODE
                        left join dbo.SITE on SOLICITCODE.SITEID=SITE.ID
                    where
                        (
                            -- Special case.  Only copy this behavior if no site assignment means all sites.

                            SOLICITCODE.SITEID is null 
                            or 
                            (dbo.UFN_APPUSER_ISSYSADMIN(@CURRENTAPPUSERID) = 1 or exists (select 1 from dbo.UFN_SITESFORUSERONFEATURE(@CURRENTAPPUSERID,@SECURITYFEATUREID,@SECURITYFEATURETYPE) where SITEID=[SOLICITCODE].[SITEID] or (SITEID is null and [SOLICITCODE].[SITEID] is null)))
                        ) 
                        and 
                        (
                            @SITEFILTERMODE = 0 
                            or 
                            SOLICITCODE.SITEID in (select SITEID from dbo.UFN_SITE_BUILDDATALISTSITEFILTER(@CURRENTAPPUSERID, @SITEFILTERMODE, @SITESSELECTED))
                        )
                        and 
                        (
                            SOLICITCODE.ACTIVE = 1 
                            or 
                            @INCLUDEINACTIVE = 1
                        )
                    order by 
                        SOLICITCODE.SEQUENCE