USP_BATCHTEMPLATE_GETDATALIST
Parameters
Parameter | Parameter Type | Mode | Description |
---|---|---|---|
@CURRENTAPPUSERID | uniqueidentifier | IN | |
@CATEGORY | nvarchar(100) | IN | |
@INCLUDEINACTIVE | bit | IN | |
@SECURITYFEATUREID | uniqueidentifier | IN | |
@SECURITYFEATURETYPE | tinyint | IN | |
@SITEFILTERMODE | tinyint | IN | |
@SITESSELECTED | xml | IN |
Definition
Copy
create procedure dbo.[USP_BATCHTEMPLATE_GETDATALIST]
(
@CURRENTAPPUSERID uniqueidentifier,
@CATEGORY nvarchar(100) = null,
@INCLUDEINACTIVE bit = 0,
@SECURITYFEATUREID uniqueidentifier,
@SECURITYFEATURETYPE tinyint,
@SITEFILTERMODE tinyint = 0,
@SITESSELECTED xml = null
)
as begin
set nocount on;
declare @ISSYSADMIN bit;
declare @ISSITESECURITY bit;
set @ISSYSADMIN = dbo.[UFN_APPUSER_ISSYSADMIN](@CURRENTAPPUSERID);
set @ISSITESECURITY = dbo.[UFN_INSTALLEDPRODUCTS_PRODUCTIS]('133f9bca-00f1-4007-9792-586b931340c6');
if @CATEGORY = '' set @CATEGORY = null;
with [INUSE] ([BATCHTEMPLATEID], [INUSE]) as (
select distinct [BATCHTEMPLATEID], cast(1 as bit) as [INUSE]
from dbo.[BATCH]
where [STATUSCODE] <> 2
)
select
[BATCHTEMPLATE].[ID],
[BATCHTEMPLATE].[NAME],
[BATCHTEMPLATE].[DESCRIPTION],
[BATCHTYPECATALOG].[CATEGORY],
[BATCHTYPECATALOG].[NAME] as [BATCHTYPE],
[BATCHTEMPLATE].[ACTIVE],
[BATCHTYPECATALOG].[SPECXML],
isnull([SITE].[NAME], '') as [SITE],
[BATCHWORKFLOW].[NAME] as [WORKFLOW],
[BATCHNUMBERINGSCHEME].[NAME] as [NUMBERINGSCHEME],
[BATCHTEMPLATE].[TEMPLATEUSECODE],
isnull([INUSE].[INUSE], 0) as [INUSE],
[BATCHTYPECATALOG].[ALLOWIMPORT]
from dbo.[BATCHTEMPLATE]
inner join dbo.[BATCHTYPECATALOG] on [BATCHTYPECATALOG].[ID] = [BATCHTEMPLATE].[BATCHTYPECATALOGID]
left outer join dbo.[BATCHWORKFLOW] on [BATCHWORKFLOW].[ID] = [BATCHTEMPLATE].[BATCHWORKFLOWID]
left outer join dbo.[BATCHNUMBERINGSCHEME] on [BATCHNUMBERINGSCHEME].[ID] = [BATCHTEMPLATE].[BATCHNUMBERINGSCHEMEID]
left outer join [SITE] on [SITE].[ID] = [BATCHTEMPLATE].[SITEID]
left outer join [INUSE] on [INUSE].[BATCHTEMPLATEID] = [BATCHTEMPLATE].[ID]
where (@ISSYSADMIN = 1 or dbo.[UFN_SECURITY_APPUSER_GRANTED_BATCHTEMPLATE](@CURRENTAPPUSERID, [BATCHTEMPLATE].[ID]) = 1)
and (@CATEGORY is null or [BATCHTYPECATALOG].[CATEGORY] = @CATEGORY)
and ([BATCHTEMPLATE].[ACTIVE] = 1 or @INCLUDEINACTIVE = 1)
and [BATCHTEMPLATE].[CUSTOM] = 0
and (@ISSYSADMIN = 1 or
@ISSITESECURITY = 0 or
[BATCHTEMPLATE].[SITEID] is null or
exists (select top 1 1 from dbo.[UFN_SITESFORUSERONFEATURE](@CURRENTAPPUSERID, @SECURITYFEATUREID, @SECURITYFEATURETYPE) where [SITEID] = [BATCHTEMPLATE].[SITEID] or ([SITEID] is null and [BATCHTEMPLATE].[SITEID] is null)))
and (@ISSITESECURITY = 0 or
@SITEFILTERMODE = 0 or
[BATCHTEMPLATE].[SITEID] in (select [SITEID] from dbo.[UFN_SITE_BUILDDATALISTSITEFILTER](@CURRENTAPPUSERID, @SITEFILTERMODE, @SITESSELECTED)))
order by [BATCHTEMPLATE].[NAME];
return 0;
end