USP_DATALIST_ACKNOWLEDGEMENTPROCESS
A datalist of saved acknowledgement process parameter sets.
Parameters
Parameter | Parameter Type | Mode | Description |
---|---|---|---|
@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_ACKNOWLEDGEMENTPROCESS(
@CURRENTAPPUSERID uniqueidentifier = null,
@SITEFILTERMODE tinyint = 0,
@SITESSELECTED xml = null,
@SECURITYFEATUREID uniqueidentifier = null,
@SECURITYFEATURETYPE tinyint = null
)
as
begin
set nocount on
select
ACKNOWLEDGEMENTPROCESS.ID,
ACKNOWLEDGEMENTPROCESS.NAME as PROCESSNAME,
ACKNOWLEDGEMENTPROCESS.DESCRIPTION,
LETTERCODE.NAME,
case ACKNOWLEDGEMENTPROCESS.MARKLETTERSACKNOWLEDGED
when 0 then null
else
case ACKNOWLEDGEMENTPROCESS.ACKNOWLEDGEDATETYPECODE
when 0 then getdate()
else ACKNOWLEDGEMENTPROCESS.ACKNOWLEDGEDATE
end
end as ACKNOWLEDGEDATE,
BPI.OWNERID as OWNERID,
0 as TYPECODE,
'Revenue' as TYPE,
coalesce(SITE.NAME,'All Sites') SITES
from dbo.ACKNOWLEDGEMENTPROCESS
inner join dbo.LETTERCODE on ACKNOWLEDGEMENTPROCESS.LETTERCODEID = LETTERCODE.ID
left join dbo.BUSINESSPROCESSINSTANCE BPI on ACKNOWLEDGEMENTPROCESS.ID = BPI.BUSINESSPROCESSPARAMETERSETID
left join dbo.SITE on SITE.ID = BPI.SITEID
where (dbo.UFN_SECURITY_APPUSER_GRANTED_BUSINESSPROCESSINSTANCE_IN_SYSTEMROLE(@CURRENTAPPUSERID, ACKNOWLEDGEMENTPROCESS.ID) = 1)
and (
(
(--Check site security
select count(*)
from dbo.UFN_SITEID_MAPFROM_ACKNOWLEDGEMENTPROCESSID(ACKNOWLEDGEMENTPROCESS.ID) as ACKNOWLEDGEMENTPROCESSSITE
where (dbo.UFN_APPUSER_ISSYSADMIN(@CURRENTAPPUSERID) = 1 or exists (select 1 from dbo.UFN_SITESFORUSERONFEATURE(@CURRENTAPPUSERID,@SECURITYFEATUREID,@SECURITYFEATURETYPE) where SITEID=[ACKNOWLEDGEMENTPROCESSSITE].[SITEID] or (SITEID is null and [ACKNOWLEDGEMENTPROCESSSITE].[SITEID] is null)))
) > 0
)
and (--Apply site filter
@SITEFILTERMODE = 0
or BPI.SITEID in (
select SITEID
from dbo.UFN_SITE_BUILDDATALISTSITEFILTER (@CURRENTAPPUSERID, @SITEFILTERMODE, @SITESSELECTED)
)
)
)
union all
select
TAP.ID,
TAP.NAME as PROCESSNAME,
TAP.DESCRIPTION,
TRIBUTELETTERCODE.NAME,
case TAP.MARKLETTERSACKNOWLEDGED
when 0 then null
else
case TAP.ACKNOWLEDGEDATETYPECODE
when 0 then getdate()
else TAP.ACKNOWLEDGEDATE
end
end as ACKNOWLEDGEDATE,
BPI.OWNERID as OWNERID,
1 as TYPECODE,
'Tribute' as TYPE,
coalesce(SITE.NAME,'All Sites') SITES
from dbo.TRIBUTEACKNOWLEDGEMENTPROCESS TAP
inner join dbo.TRIBUTELETTERCODE on TAP.TRIBUTELETTERCODEID = TRIBUTELETTERCODE.ID
left join dbo.BUSINESSPROCESSINSTANCE BPI on TAP.ID = BPI.BUSINESSPROCESSPARAMETERSETID
left join dbo.SITE on SITE.ID = BPI.SITEID
where (dbo.UFN_SECURITY_APPUSER_GRANTED_BUSINESSPROCESSINSTANCE_IN_SYSTEMROLE(@CURRENTAPPUSERID, TAP.ID) = 1)
and (
(
(--Check site security
select count(*)
from dbo.UFN_SITEID_MAPFROM_ACKNOWLEDGEMENTPROCESSID(TAP.ID) as ACKNOWLEDGEMENTPROCESSSITE
where (dbo.UFN_APPUSER_ISSYSADMIN(@CURRENTAPPUSERID) = 1 or exists (select 1 from dbo.UFN_SITESFORUSERONFEATURE(@CURRENTAPPUSERID,@SECURITYFEATUREID,@SECURITYFEATURETYPE) where SITEID=[ACKNOWLEDGEMENTPROCESSSITE].[SITEID] or (SITEID is null and [ACKNOWLEDGEMENTPROCESSSITE].[SITEID] is null)))
) > 0
)
and (--Apply site filter
@SITEFILTERMODE = 0
or BPI.SITEID in (
select SITEID
from dbo.UFN_SITE_BUILDDATALISTSITEFILTER (@CURRENTAPPUSERID, @SITEFILTERMODE, @SITESSELECTED)
)
)
)
order by TYPE,PROCESSNAME;
end