USP_DATALIST_CATALOGITEM
Returns the catalog items that meet the data list criteria.
Parameters
Parameter | Parameter Type | Mode | Description |
---|---|---|---|
@RECORDTYPE | uniqueidentifier | IN | Record Type |
@ITEMTYPE | int | IN | Item Type |
Definition
Copy
CREATE procedure dbo.USP_DATALIST_CATALOGITEM(@RECORDTYPE uniqueidentifier = NULL,
@ITEMTYPE int = NULL)
as
set nocount on;
if @ITEMTYPE = 0
-- AddDataFormTemplateSpec
select DATAFORMTEMPLATECATALOG.ID, DATAFORMTEMPLATECATALOG.TEMPLATENAME AS SPECNAME, DATAFORMTEMPLATECATALOG.TEMPLATESPECXML AS SPEC, @ITEMTYPE AS ITEMTYPE, RECORDTYPE.ID AS RECORDTYPE, RECORDTYPE.NAME AS RECORDTYPENAME
from dbo.DATAFORMTEMPLATECATALOG
inner join dbo.RECORDTYPE
on DATAFORMTEMPLATECATALOG.RECORDTYPEID = RECORDTYPE.ID
where (MODE = 2) AND ((@RECORDTYPE IS NULL) OR (RECORDTYPEID = @RECORDTYPE))
else if (@ITEMTYPE = 1) AND (@RECORDTYPE IS NULL)
-- CodeTableSpec
select ID, CODETABLENAME AS SPECNAME, CODETABLESPECXML AS SPEC, @ITEMTYPE AS ITEMTYPE, NULL AS RECORDTYPE, '' AS RECORDTYPENAME
from dbo.CODETABLECATALOG
else if @ITEMTYPE = 2
-- DataListSpec
select DATALISTCATALOG.ID, DATALISTCATALOG.NAME AS SPECNAME, DATALISTCATALOG.DATALISTSPEC AS SPEC, @ITEMTYPE AS ITEMTYPE, RECORDTYPE.ID AS RECORDTYPE, ISNULL(RECORDTYPE.NAME, '') AS RECORDTYPENAME
from dbo.DATALISTCATALOG
left join dbo.RECORDTYPE
on DATALISTCATALOG.RECORDTYPEID = RECORDTYPE.ID
where (@RECORDTYPE IS NULL) OR (RECORDTYPEID = @RECORDTYPE)
else if @ITEMTYPE = 3
-- EditDataFormTemplateSpec
select DATAFORMTEMPLATECATALOG.ID, DATAFORMTEMPLATECATALOG.TEMPLATENAME AS SPECNAME, DATAFORMTEMPLATECATALOG.TEMPLATESPECXML AS SPEC, @ITEMTYPE AS ITEMTYPE, RECORDTYPE.ID AS RECORDTYPE, RECORDTYPE.NAME AS RECORDTYPENAME
from dbo.DATAFORMTEMPLATECATALOG
left join dbo.RECORDTYPE
on DATAFORMTEMPLATECATALOG.RECORDTYPEID = RECORDTYPE.ID
where (MODE = 1) AND ((@RECORDTYPE IS NULL) OR (RECORDTYPEID = @RECORDTYPE))
else if (@ITEMTYPE = 4) AND (@RECORDTYPE IS NULL)
-- FunctionalAreaSpec
select FUNCTIONALAREACATALOG.ID, FUNCTIONALAREACATALOG.NAME AS SPECNAME, FUNCTIONALAREACATALOG.FUNCTIONALAREASPECXML AS SPEC, @ITEMTYPE AS ITEMTYPE, NULL AS RECORDTYPE, '' AS RECORDTYPENAME
from dbo.FUNCTIONALAREACATALOG
else if (@ITEMTYPE = 5) AND (@RECORDTYPE IS NULL)
-- PackageSpec
select ID, PACKAGENAME AS SPECNAME, PACKAGESPECXML AS SPEC, @ITEMTYPE AS ITEMTYPE, NULL AS RECORDTYPE, '' AS RECORDTYPENAME
from dbo.PACKAGECATALOG
else if @ITEMTYPE = 6
-- PageDefinitionSpec
select PAGEDEFINITIONCATALOG.ID, PAGEDEFINITIONCATALOG.NAME AS SPECNAME, PAGEDEFINITIONCATALOG.PAGEDEFINITIONSPEC AS SPEC, @ITEMTYPE AS ITEMTYPE, PAGEDEFINITIONCATALOG.CONTEXTRECORDTYPEID AS RECORDTYPE, RECORDTYPE.NAME AS RECORDTYPENAME
from dbo.PAGEDEFINITIONCATALOG
left join dbo.RECORDTYPE
on PAGEDEFINITIONCATALOG.CONTEXTRECORDTYPEID = RECORDTYPE.ID
where (@RECORDTYPE IS NULL) OR (CONTEXTRECORDTYPEID = @RECORDTYPE)
else if @ITEMTYPE = 7
-- QueryViewSpec
select QUERYVIEWCATALOG.ID, QUERYVIEWCATALOG.DISPLAYNAME AS SPECNAME, QUERYVIEWCATALOG.QUERYVIEWSPEC AS SPEC, @ITEMTYPE AS ITEMTYPE, RECORDTYPE.ID AS RECORDTYPE, RECORDTYPE.NAME AS RECORDTYPENAME
from dbo.QUERYVIEWCATALOG
left join dbo.RECORDTYPE
on QUERYVIEWCATALOG.RECORDTYPEID = RECORDTYPE.ID
where (@RECORDTYPE IS NULL) OR (RECORDTYPEID = @RECORDTYPE)
-- todo: QueryViewSpecExtensions don't have their own ID
else if @ITEMTYPE = 8
-- QueryViewSpecExtension
select QUERYVIEWCATALOG.ID, QUERYVIEWCATALOG.DISPLAYNAME AS SPECNAME, QUERYVIEWCATALOG.QUERYVIEWSPECEXTENSION AS SPEC, @ITEMTYPE AS ITEMTYPE, RECORDTYPE.ID AS RECORDTYPE, RECORDTYPE.NAME AS RECORDTYPENAME
from dbo.QUERYVIEWCATALOG
left join dbo.RECORDTYPE
on QUERYVIEWCATALOG.RECORDTYPEID = RECORDTYPE.ID
where (datalength(QUERYVIEWSPECEXTENSION) > 5) AND ((@RECORDTYPE IS NULL) OR (RECORDTYPEID = @RECORDTYPE))
else if (@ITEMTYPE = 9) AND (@RECORDTYPE IS NULL)
-- ReportSpec
select ID, NAME AS SPECNAME, REPORTSPECXML AS SPEC, @ITEMTYPE AS ITEMTYPE, NULL AS RECORDTYPE, '' AS RECORDTYPENAME
from dbo.REPORTCATALOG
else if @ITEMTYPE = 10
-- SearchListSpec
select SEARCHLISTCATALOG.ID, SEARCHLISTCATALOG.NAME AS SPECNAME, SEARCHLISTCATALOG.SEARCHLISTSPEC AS SPEC, @ITEMTYPE AS ITEMTYPE, RECORDTYPE.ID AS RECORDTYPE, RECORDTYPE.NAME AS RECORDTYPENAME
from dbo.SEARCHLISTCATALOG
inner join dbo.RECORDTYPE
on SEARCHLISTCATALOG.RECORDTYPEID = RECORDTYPE.ID
where (@RECORDTYPE IS NULL) OR (RECORDTYPEID = @RECORDTYPE)
else if (@ITEMTYPE = 11) AND (@RECORDTYPE IS NULL)
-- SimpleDataListSpec
select ID, NAME AS SPECNAME, SIMPLEDATALISTSPECXML AS SPEC, @ITEMTYPE AS ITEMTYPE, NULL AS RECORDTYPE, '' AS RECORDTYPENAME
from dbo.SIMPLEDATALISTCATALOG
else if @ITEMTYPE = 12
-- SmartQuerySpec
select SMARTQUERYCATALOG.ID, SMARTQUERYCATALOG.NAME AS SPECNAME, SMARTQUERYCATALOG.SMARTQUERYSPEC AS SPEC, @ITEMTYPE AS ITEMTYPE, RECORDTYPE.ID AS RECORDTYPE, RECORDTYPE.NAME AS RECORDTYPENAME
from dbo.SMARTQUERYCATALOG
inner join dbo.RECORDTYPE
on SMARTQUERYCATALOG.RECORDTYPEID = RECORDTYPE.ID
where (@RECORDTYPE IS NULL) OR (RECORDTYPEID = @RECORDTYPE)
else if (@ITEMTYPE = 13) AND (@RECORDTYPE IS NULL)
-- SQLFunctionSpec
select ID, FUNCTIONNAME AS SPECNAME, SQLFUNCTIONSPECXML AS SPEC, @ITEMTYPE AS ITEMTYPE, NULL AS RECORDTYPE, '' AS RECORDTYPENAME
from dbo.SQLFUNCTIONCATALOG
else if (@ITEMTYPE = 14) AND (@RECORDTYPE IS NULL)
-- SQLStoredProcedureSpec
select ID, PROCEDURENAME AS SPECNAME, SQLPROCEDURESPECXML AS SPEC, @ITEMTYPE AS ITEMTYPE, NULL AS RECORDTYPE, '' AS RECORDTYPENAME
from dbo.SQLPROCEDURECATALOG
else if (@ITEMTYPE = 15) AND (@RECORDTYPE IS NULL)
-- TableSpec
select ID, TABLENAME AS SPECNAME, TABLESPECXML AS SPEC, @ITEMTYPE AS ITEMTYPE, NULL AS RECORDTYPE, '' AS RECORDTYPENAME
from dbo.TABLECATALOG
-- TableSpecExtensions don't have their own ID
else if @ITEMTYPE = 16
select ID, TABLENAME AS SPECNAME, TABLESPECEXTENSIONXML AS SPEC, @ITEMTYPE AS ITEMTYPE, NULL AS RECORDTYPE, '' AS RECORDTYPENAME
from dbo.TABLECATALOG
where datalength(TABLESPECEXTENSIONXML) > 5
else if (@ITEMTYPE = 17) AND (@RECORDTYPE IS NULL)
select ID, NAME AS SPECNAME, TASKSPECXML AS SPEC, @ITEMTYPE AS ITEMTYPE, NULL AS RECORDTYPE, '' AS RECORDTYPENAME
from dbo.TASKCATALOG
else if @ITEMTYPE = 18
-- TranslationFunctionSpec
select TRANSLATIONFUNCTIONCATALOG.ID, TRANSLATIONFUNCTIONCATALOG.NAME AS SPECNAME, TRANSLATIONFUNCTIONCATALOG.TRANSLATIONFUNCTIONSPEC AS SPEC, @ITEMTYPE AS ITEMTYPE, RECORDTYPE.ID AS RECORDTYPE, RECORDTYPE.NAME AS RECORDTYPENAME
from dbo.TRANSLATIONFUNCTIONCATALOG
left join dbo.RECORDTYPE
on TRANSLATIONFUNCTIONCATALOG.RECORDTYPEID = RECORDTYPE.ID
where (@RECORDTYPE IS NULL) OR (RECORDTYPEID = @RECORDTYPE)
else if @ITEMTYPE = 19
-- ViewDataFormTemplateSpec
select DATAFORMTEMPLATECATALOG.ID, DATAFORMTEMPLATECATALOG.TEMPLATENAME AS SPECNAME, DATAFORMTEMPLATECATALOG.TEMPLATESPECXML AS SPEC, @ITEMTYPE AS ITEMTYPE, RECORDTYPE.ID AS RECORDTYPE, RECORDTYPE.NAME AS RECORDTYPENAME
from dbo.DATAFORMTEMPLATECATALOG
left join dbo.RECORDTYPE
on DATAFORMTEMPLATECATALOG.RECORDTYPEID = RECORDTYPE.ID
where (MODE = 0) AND ((@RECORDTYPE IS NULL) OR (RECORDTYPEID = @RECORDTYPE))
else if (@ITEMTYPE = 20) AND (@RECORDTYPE IS NULL)
-- BatchTypeSpec
select ID, NAME AS SPECNAME, SPECXML AS SPEC, @ITEMTYPE AS ITEMTYPE, NULL AS RECORDTYPE, '' AS RECORDTYPENAME
from dbo.BATCHTYPECATALOG
else if @ITEMTYPE = 21
-- IDMapperSpec
select IDMAPPERCATALOG.ID, IDMAPPERCATALOG.NAME AS SPECNAME, IDMAPPERCATALOG.IDMAPPERSPECXML AS SPEC, @ITEMTYPE AS ITEMTYPE, SOURCERECORDTYPEID AS RECORDTYPE, RECORDTYPE.NAME AS RECORDTYPENAME
from dbo.IDMAPPERCATALOG
left join dbo.RECORDTYPE
on IDMAPPERCATALOG.SOURCERECORDTYPEID = RECORDTYPE.ID
where (@RECORDTYPE IS NULL) OR (SOURCERECORDTYPEID = @RECORDTYPE)
else if @ITEMTYPE = 22
-- BusinessProcessSpec
select BUSINESSPROCESSCATALOG.ID, BUSINESSPROCESSCATALOG.NAME AS SPECNAME, BUSINESSPROCESSCATALOG.BUSINESSPROCESSSPECXML AS SPEC, @ITEMTYPE AS ITEMTYPE, RECORDTYPE.ID AS RECORDTYPE, RECORDTYPE.NAME AS RECORDTYPENAME
from dbo.BUSINESSPROCESSCATALOG
inner join dbo.RECORDTYPE
on BUSINESSPROCESSCATALOG.RECORDTYPEID = RECORDTYPE.ID
where (@RECORDTYPE IS NULL) OR (RECORDTYPEID = @RECORDTYPE)
else if @ITEMTYPE = 23
-- RecordOperationSpec
select RECORDOPERATIONCATALOG.ID, RECORDOPERATIONCATALOG.DISPLAYNAME AS SPECNAME, RECORDOPERATIONCATALOG.RECORDOPERATIONSPECXML AS SPEC, @ITEMTYPE AS ITEMTYPE, RECORDTYPE.ID AS RECORDTYPE, RECORDTYPE.NAME AS RECORDTYPENAME
from dbo.RECORDOPERATIONCATALOG
left join dbo.RECORDTYPE
on RECORDOPERATIONCATALOG.RECORDTYPEID = RECORDTYPE.ID
where (@RECORDTYPE IS NULL) OR (RECORDTYPEID = @RECORDTYPE)
else if @ITEMTYPE = 24
select DASHBOARDCATALOG.ID, DASHBOARDCATALOG.NAME AS SPECNAME, DASHBOARDCATALOG.SPECXML AS SPEC, @ITEMTYPE AS ITEMTYPE, CONTEXTRECORDTYPEID AS RECORDTYPE, RECORDTYPE.NAME AS RECORDTYPENAME
from dbo.DASHBOARDCATALOG
left join dbo.RECORDTYPE
on DASHBOARDCATALOG.CONTEXTRECORDTYPEID = RECORDTYPE.ID
where (@RECORDTYPE IS NULL) OR (CONTEXTRECORDTYPEID = @RECORDTYPE)
else if @ITEMTYPE = 26
-- MergeTaskSpec
select MERGETASKCATALOG.ID, MERGETASKCATALOG.NAME AS SPECNAME, MERGETASKCATALOG.SPECXML AS SPEC, @ITEMTYPE AS ITEMTYPE, RECORDTYPE.ID AS RECORDTYPE, RECORDTYPE.NAME AS RECORDTYPENAME
from dbo.MERGETASKCATALOG
inner join dbo.RECORDTYPE
on MERGETASKCATALOG.RECORDTYPEID = RECORDTYPE.ID
where (@RECORDTYPE IS NULL) OR (RECORDTYPEID = @RECORDTYPE)
else if @ITEMTYPE IS NULL
-- All the above items with unions in between
-- AddDataFormTemplateSpec
select DATAFORMTEMPLATECATALOG.ID, DATAFORMTEMPLATECATALOG.TEMPLATENAME AS SPECNAME, DATAFORMTEMPLATECATALOG.TEMPLATESPECXML AS SPEC, 0 AS ITEMTYPE, RECORDTYPE.ID AS RECORDTYPE, RECORDTYPE.NAME AS RECORDTYPENAME
from dbo.DATAFORMTEMPLATECATALOG
inner join dbo.RECORDTYPE
on DATAFORMTEMPLATECATALOG.RECORDTYPEID = RECORDTYPE.ID
where (MODE = 2) AND ((@RECORDTYPE IS NULL) OR (RECORDTYPEID = @RECORDTYPE))
union all
-- CodeTableSpec
select ID, CODETABLENAME AS SPECNAME, CODETABLESPECXML AS SPEC, 1 AS ITEMTYPE, NULL AS RECORDTYPE, '' AS RECORDTYPENAME
from dbo.CODETABLECATALOG
where (@RECORDTYPE IS NULL)
union all
-- DataListSpec
select DATALISTCATALOG.ID, DATALISTCATALOG.NAME AS SPECNAME, DATALISTCATALOG.DATALISTSPEC AS SPEC, 2 AS ITEMTYPE, RECORDTYPE.ID AS RECORDTYPE, ISNULL(RECORDTYPE.NAME, '') AS RECORDTYPENAME
from dbo.DATALISTCATALOG
left join dbo.RECORDTYPE
on DATALISTCATALOG.RECORDTYPEID = RECORDTYPE.ID
where (@RECORDTYPE IS NULL) OR (RECORDTYPEID = @RECORDTYPE)
union all
-- EditDataFormTemplateSpec
select DATAFORMTEMPLATECATALOG.ID, DATAFORMTEMPLATECATALOG.TEMPLATENAME AS SPECNAME, DATAFORMTEMPLATECATALOG.TEMPLATESPECXML AS SPEC, 3 AS ITEMTYPE, RECORDTYPE.ID AS RECORDTYPE, RECORDTYPE.NAME AS RECORDTYPENAME
from dbo.DATAFORMTEMPLATECATALOG
left join dbo.RECORDTYPE
on DATAFORMTEMPLATECATALOG.RECORDTYPEID = RECORDTYPE.ID
where (MODE = 1) AND ((@RECORDTYPE IS NULL) OR (RECORDTYPEID = @RECORDTYPE))
union all
-- FunctionalAreaSpec
select FUNCTIONALAREACATALOG.ID, FUNCTIONALAREACATALOG.NAME AS SPECNAME, FUNCTIONALAREACATALOG.FUNCTIONALAREASPECXML AS SPEC, 4 AS ITEMTYPE, NULL AS RECORDTYPE, '' AS RECORDTYPENAME
from dbo.FUNCTIONALAREACATALOG
where (@RECORDTYPE IS NULL)
union all
-- PackageSpec
select ID, PACKAGENAME AS SPECNAME, PACKAGESPECXML AS SPEC, 5 AS ITEMTYPE, NULL AS RECORDTYPE, '' AS RECORDTYPENAME
from dbo.PACKAGECATALOG
where (@RECORDTYPE IS NULL)
union all
-- PageDefinitionSpec
select PAGEDEFINITIONCATALOG.ID, PAGEDEFINITIONCATALOG.NAME AS SPECNAME, PAGEDEFINITIONCATALOG.PAGEDEFINITIONSPEC AS SPEC, 6 AS ITEMTYPE, PAGEDEFINITIONCATALOG.CONTEXTRECORDTYPEID AS RECORDTYPE, RECORDTYPE.NAME AS RECORDTYPENAME
from dbo.PAGEDEFINITIONCATALOG
left join dbo.RECORDTYPE
on PAGEDEFINITIONCATALOG.CONTEXTRECORDTYPEID = RECORDTYPE.ID
where (@RECORDTYPE IS NULL) OR (CONTEXTRECORDTYPEID = @RECORDTYPE)
union all
-- QueryViewSpec
select QUERYVIEWCATALOG.ID, QUERYVIEWCATALOG.DISPLAYNAME AS SPECNAME, QUERYVIEWCATALOG.QUERYVIEWSPEC AS SPEC, 7 AS ITEMTYPE, RECORDTYPE.ID AS RECORDTYPE, RECORDTYPE.NAME AS RECORDTYPENAME
from dbo.QUERYVIEWCATALOG
left join dbo.RECORDTYPE
on QUERYVIEWCATALOG.RECORDTYPEID = RECORDTYPE.ID
where (@RECORDTYPE IS NULL) OR (RECORDTYPEID = @RECORDTYPE)
-- todo: QueryViewSpecExtensions don't have their own ID
union all
-- QueryViewSpecExtension
select QUERYVIEWCATALOG.ID, QUERYVIEWCATALOG.DISPLAYNAME AS SPECNAME, QUERYVIEWCATALOG.QUERYVIEWSPECEXTENSION AS SPEC, 8 AS ITEMTYPE, RECORDTYPE.ID AS RECORDTYPE, RECORDTYPE.NAME AS RECORDTYPENAME
from dbo.QUERYVIEWCATALOG
left join dbo.RECORDTYPE
on QUERYVIEWCATALOG.RECORDTYPEID = RECORDTYPE.ID
where (datalength(QUERYVIEWSPECEXTENSION) > 5) AND ((@RECORDTYPE IS NULL) OR (RECORDTYPEID = @RECORDTYPE))
union all
-- ReportSpec
select ID, NAME AS SPECNAME, REPORTSPECXML AS SPEC, 9 AS ITEMTYPE, NULL AS RECORDTYPE, '' AS RECORDTYPENAME
from dbo.REPORTCATALOG
where (@RECORDTYPE IS NULL)
union all
-- SearchListSpec
select SEARCHLISTCATALOG.ID, SEARCHLISTCATALOG.NAME AS SPECNAME, SEARCHLISTCATALOG.SEARCHLISTSPEC AS SPEC, 10 AS ITEMTYPE, RECORDTYPE.ID AS RECORDTYPE, RECORDTYPE.NAME AS RECORDTYPENAME
from dbo.SEARCHLISTCATALOG
inner join dbo.RECORDTYPE
on SEARCHLISTCATALOG.RECORDTYPEID = RECORDTYPE.ID
where (@RECORDTYPE IS NULL) OR (RECORDTYPEID = @RECORDTYPE)
union all
-- SimpleDataListSpec
select ID, NAME AS SPECNAME, SIMPLEDATALISTSPECXML AS SPEC, 11 AS ITEMTYPE, NULL AS RECORDTYPE, '' AS RECORDTYPENAME
from dbo.SIMPLEDATALISTCATALOG
where (@RECORDTYPE IS NULL)
union all
-- SmartQuerySpec
select SMARTQUERYCATALOG.ID, SMARTQUERYCATALOG.NAME AS SPECNAME, SMARTQUERYCATALOG.SMARTQUERYSPEC AS SPEC, 12 AS ITEMTYPE, RECORDTYPE.ID AS RECORDTYPE, RECORDTYPE.NAME AS RECORDTYPENAME
from dbo.SMARTQUERYCATALOG
inner join dbo.RECORDTYPE
on SMARTQUERYCATALOG.RECORDTYPEID = RECORDTYPE.ID
where (@RECORDTYPE IS NULL) OR (RECORDTYPEID = @RECORDTYPE)
union all
-- SQLFunctionSpec
select ID, FUNCTIONNAME AS SPECNAME, SQLFUNCTIONSPECXML AS SPEC, 13 AS ITEMTYPE, NULL AS RECORDTYPE, '' AS RECORDTYPENAME
from dbo.SQLFUNCTIONCATALOG
where (@RECORDTYPE IS NULL)
union all
-- SQLStoredProcedureSpec
select ID, PROCEDURENAME AS SPECNAME, SQLPROCEDURESPECXML AS SPEC, 14 AS ITEMTYPE, NULL AS RECORDTYPE, '' AS RECORDTYPENAME
from dbo.SQLPROCEDURECATALOG
where (@RECORDTYPE IS NULL)
union all
-- TableSpec
select ID, TABLENAME AS SPECNAME, TABLESPECXML AS SPEC, 15 AS ITEMTYPE, NULL AS RECORDTYPE, '' AS RECORDTYPENAME
from dbo.TABLECATALOG
where (@RECORDTYPE IS NULL)
-- TableSpecExtensions don't have their own ID
union all
select ID, TABLENAME AS SPECNAME, TABLESPECEXTENSIONXML AS SPEC, 16 AS ITEMTYPE, NULL AS RECORDTYPE, '' AS RECORDTYPENAME
from dbo.TABLECATALOG
where datalength(TABLESPECEXTENSIONXML) > 5
union all
select ID, NAME AS SPECNAME, TASKSPECXML AS SPEC, 17 AS ITEMTYPE, NULL AS RECORDTYPE, '' AS RECORDTYPENAME
from dbo.TASKCATALOG
where (@RECORDTYPE IS NULL)
union all
-- TranslationFunctionSpec
select TRANSLATIONFUNCTIONCATALOG.ID, TRANSLATIONFUNCTIONCATALOG.NAME AS SPECNAME, TRANSLATIONFUNCTIONCATALOG.TRANSLATIONFUNCTIONSPEC AS SPEC, 18 AS ITEMTYPE, RECORDTYPE.ID AS RECORDTYPE, RECORDTYPE.NAME AS RECORDTYPENAME
from dbo.TRANSLATIONFUNCTIONCATALOG
left join dbo.RECORDTYPE
on TRANSLATIONFUNCTIONCATALOG.RECORDTYPEID = RECORDTYPE.ID
where (@RECORDTYPE IS NULL) OR (RECORDTYPEID = @RECORDTYPE)
union all
-- ViewDataFormTemplateSpec
select DATAFORMTEMPLATECATALOG.ID, DATAFORMTEMPLATECATALOG.TEMPLATENAME AS SPECNAME, DATAFORMTEMPLATECATALOG.TEMPLATESPECXML AS SPEC, 19 AS ITEMTYPE, RECORDTYPE.ID AS RECORDTYPE, RECORDTYPE.NAME AS RECORDTYPENAME
from dbo.DATAFORMTEMPLATECATALOG
left join dbo.RECORDTYPE
on DATAFORMTEMPLATECATALOG.RECORDTYPEID = RECORDTYPE.ID
where (MODE = 0) AND ((@RECORDTYPE IS NULL) OR (RECORDTYPEID = @RECORDTYPE))
union all
-- BatchTypeSpec
select ID, NAME AS SPECNAME, SPECXML AS SPEC, 20 AS ITEMTYPE, NULL AS RECORDTYPE, '' AS RECORDTYPENAME
from dbo.BATCHTYPECATALOG
where (@RECORDTYPE IS NULL)
union all
-- IDMapperSpec
select IDMAPPERCATALOG.ID, IDMAPPERCATALOG.NAME AS SPECNAME, IDMAPPERCATALOG.IDMAPPERSPECXML AS SPEC, 21 AS ITEMTYPE, SOURCERECORDTYPEID AS RECORDTYPE, RECORDTYPE.NAME AS RECORDTYPENAME
from dbo.IDMAPPERCATALOG
left join dbo.RECORDTYPE
on IDMAPPERCATALOG.SOURCERECORDTYPEID = RECORDTYPE.ID
where (@RECORDTYPE IS NULL) OR (SOURCERECORDTYPEID = @RECORDTYPE)
union all
-- BusinessProcessSpec
select BUSINESSPROCESSCATALOG.ID, BUSINESSPROCESSCATALOG.NAME AS SPECNAME, BUSINESSPROCESSCATALOG.BUSINESSPROCESSSPECXML AS SPEC, 22 AS ITEMTYPE, RECORDTYPE.ID AS RECORDTYPE, RECORDTYPE.NAME AS RECORDTYPENAME
from dbo.BUSINESSPROCESSCATALOG
inner join dbo.RECORDTYPE
on BUSINESSPROCESSCATALOG.RECORDTYPEID = RECORDTYPE.ID
where (@RECORDTYPE IS NULL) OR (RECORDTYPEID = @RECORDTYPE)
union all
-- RecordOperationSpec
select RECORDOPERATIONCATALOG.ID, RECORDOPERATIONCATALOG.DISPLAYNAME AS SPECNAME, RECORDOPERATIONCATALOG.RECORDOPERATIONSPECXML AS SPEC, 23 AS ITEMTYPE, RECORDTYPE.ID AS RECORDTYPE, RECORDTYPE.NAME AS RECORDTYPENAME
from dbo.RECORDOPERATIONCATALOG
left join dbo.RECORDTYPE
on RECORDOPERATIONCATALOG.RECORDTYPEID = RECORDTYPE.ID
where (@RECORDTYPE IS NULL) OR (RECORDTYPEID = @RECORDTYPE)
union all
select DASHBOARDCATALOG.ID, DASHBOARDCATALOG.NAME AS SPECNAME, DASHBOARDCATALOG.SPECXML AS SPEC, 24 AS ITEMTYPE, CONTEXTRECORDTYPEID AS RECORDTYPE, RECORDTYPE.NAME AS RECORDTYPENAME
from dbo.DASHBOARDCATALOG
left join dbo.RECORDTYPE
on DASHBOARDCATALOG.CONTEXTRECORDTYPEID = RECORDTYPE.ID
where (@RECORDTYPE IS NULL) OR (CONTEXTRECORDTYPEID = @RECORDTYPE)
union all
-- MergeTaskSpec
select MERGETASKCATALOG.ID, MERGETASKCATALOG.NAME AS SPECNAME, MERGETASKCATALOG.SPECXML AS SPEC, 26 AS ITEMTYPE, RECORDTYPE.ID AS RECORDTYPE, RECORDTYPE.NAME AS RECORDTYPENAME
from dbo.MERGETASKCATALOG
inner join dbo.RECORDTYPE
on MERGETASKCATALOG.RECORDTYPEID = RECORDTYPE.ID
where (@RECORDTYPE IS NULL) OR (RECORDTYPEID = @RECORDTYPE)