USP_DATALIST_STEWARDSHIPPLANS
This datalist returns all stewardship plans related to a constituent.
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. |
@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. |
@INCLUDEINACTIVEPLANS | bit | IN |
Definition
Copy
CREATE procedure dbo.USP_DATALIST_STEWARDSHIPPLANS
(
@CONSTITUENTID uniqueidentifier,
@CURRENTAPPUSERID uniqueidentifier,
@SITEFILTERMODE tinyint = 0,
@SITESSELECTED xml = null,
@SECURITYFEATUREID uniqueidentifier = null,
@SECURITYFEATURETYPE tinyint = null,
@INCLUDEINACTIVEPLANS bit = 0
)
as
set nocount on;
declare @STEWARDIDS table
(
ID uniqueidentifier,
NAME nvarchar(300),
PLANID uniqueidentifier
);
insert into @STEWARDIDS
select distinct
STEWARDSHIPPLAN.CONSTITUENTID ID,
NF.NAME NAME,
STEWARDSHIPPLAN.ID PLANID
from
dbo.STEWARDSHIPPLAN
outer apply dbo.UFN_CONSTITUENT_DISPLAYNAME(STEWARDSHIPPLAN.CONSTITUENTID) NF
where
(@INCLUDEINACTIVEPLANS=1 or STEWARDSHIPPLAN.ISACTIVE=1) AND
STEWARDSHIPPLAN.CONSTITUENTID = @CONSTITUENTID
union all
select distinct
STEWARD.ID ID,
STEWARD.NAME NAME,
STEWARDSHIPPLAN.ID PLANID
from dbo.STEWARDSHIPPLANSTEWARD
left join dbo.STEWARDSHIPPLAN on STEWARDSHIPPLANSTEWARD.PLANID = STEWARDSHIPPLAN.ID
left join dbo.CONSTITUENT STEWARD on STEWARDSHIPPLAN.CONSTITUENTID = STEWARD.ID
where (@INCLUDEINACTIVEPLANS=1 or STEWARDSHIPPLAN.ISACTIVE=1) AND
STEWARDSHIPPLANSTEWARD.CONSTITUENTID = @CONSTITUENTID
select
STEWARDSHIPPLAN.ID,
STEWARDSHIPPLAN.NAME,
MANAGER_NF.NAME MANAGER,
dbo.UFN_STEWARDSHIPPLAN_GETSITELIST(STEWARDSHIPPLAN.ID),
NF.NAME CONSTITUENTNAME,
STEWARDSHIPPLANTYPECODE.DESCRIPTION as PLANTYPE,
STEWARDSHIPPLANSUBTYPECODE.DESCRIPTION as PLANSUBTYPE,
STEWARDSHIPPLAN.STARTDATE,
STEWARDSHIPPLAN.DATEADDED,
STEWARDSHIPPLAN.ISACTIVE
from dbo.STEWARDSHIPPLAN
inner join @STEWARDIDS STEWARD on STEWARDSHIPPLAN.CONSTITUENTID = STEWARD.ID and STEWARD.PLANID = STEWARDSHIPPLAN.ID
left join dbo.STEWARDSHIPPLANTYPECODE on STEWARDSHIPPLANTYPECODE.ID = STEWARDSHIPPLAN.PLANTYPECODEID
left join dbo.STEWARDSHIPPLANSUBTYPECODE on STEWARDSHIPPLANSUBTYPECODE.ID = STEWARDSHIPPLAN.PLANSUBTYPECODEID
outer apply dbo.UFN_CONSTITUENT_DISPLAYNAME(STEWARD.ID) NF
outer apply dbo.UFN_CONSTITUENT_DISPLAYNAME(STEWARDSHIPPLAN.MANAGERID) MANAGER_NF
where (@INCLUDEINACTIVEPLANS=1 or STEWARDSHIPPLAN.ISACTIVE=1) AND
(
select
count(*)
from
dbo.UFN_SITEID_MAPFROM_STEWARDSHIPPLANID(STEWARDSHIPPLAN.ID) as STEWARDSHIPPLANSITE
where
(dbo.UFN_APPUSER_ISSYSADMIN(@CURRENTAPPUSERID) = 1 or exists (select 1 from dbo.UFN_SITESFORUSERONFEATURE(@CURRENTAPPUSERID,@SECURITYFEATUREID,@SECURITYFEATURETYPE) where SITEID=[STEWARDSHIPPLANSITE].[SITEID] or (SITEID is null and [STEWARDSHIPPLANSITE].[SITEID] is null)))
) > 0
and (
@SITEFILTERMODE = 0
or
STEWARDSHIPPLAN.ID in
(
select
STEWARDSHIPPLANSITE.STEWARDSHIPPLANID
from
dbo.UFN_SITE_BUILDDATALISTSITEFILTER (@CURRENTAPPUSERID, @SITEFILTERMODE, @SITESSELECTED) SITEFILTER
inner join dbo.STEWARDSHIPPLANSITE on STEWARDSHIPPLANSITE.SITEID = SITEFILTER.SITEID
)
)
group by
STEWARDSHIPPLAN.ID,
STEWARDSHIPPLAN.ISACTIVE,
STEWARDSHIPPLAN.NAME,
MANAGER_NF.NAME,
NF.NAME,
STEWARDSHIPPLANTYPECODE.DESCRIPTION,
STEWARDSHIPPLANSUBTYPECODE.DESCRIPTION,
STEWARDSHIPPLAN.STARTDATE,
STEWARDSHIPPLAN.DATEADDED
order by
STEWARDSHIPPLAN.NAME