UFN_CAMPAIGNHIERARCHY_SECURED
Return
Return Type |
---|
table |
Parameters
Parameter | Parameter Type | Mode | Description |
---|---|---|---|
@CURRENTAPPUSERID | uniqueidentifier | IN | |
@SECURITYFEATURETYPE | int | IN | |
@SECURITYFEATUREID | uniqueidentifier | IN |
Definition
Copy
create function dbo.UFN_CAMPAIGNHIERARCHY_SECURED
(
@CURRENTAPPUSERID uniqueidentifier,
@SECURITYFEATURETYPE int,
@SECURITYFEATUREID uniqueidentifier
)
returns table
as
return (
with CAMPAIGNLIST_CTE as
(
select
ID,
HIERARCHYPATH,
NAME,
SEQUENCE
from dbo.CAMPAIGN
where
(
select count(*)
from dbo.UFN_SITEID_MAPFROM_CAMPAIGNID(CAMPAIGN.ID) as CAMPAIGNSITE
where (dbo.UFN_APPUSER_ISSYSADMIN(@CURRENTAPPUSERID) = 1 or exists (select 1 from dbo.UFN_SITESFORUSERONFEATURE(@CURRENTAPPUSERID,@SECURITYFEATUREID,@SECURITYFEATURETYPE) where SITEID=[CAMPAIGNSITE].[SITEID] or (SITEID is null and [CAMPAIGNSITE].[SITEID] is null)))
) > 0
)
select
CAMPAIGN.ID,
(
select
PARENTCAMPAIGN.ID
from
CAMPAIGNLIST_CTE [PARENTCAMPAIGN]
where
CAMPAIGN.HIERARCHYPATH.GetAncestor(1) = PARENTCAMPAIGN.HIERARCHYPATH
) as PARENTCAMPAIGNID,
CAMPAIGN.NAME,
CAMPAIGN.SEQUENCE
from
CAMPAIGNLIST_CTE CAMPAIGN
)