USP_BUSINESSPROCESSOUTPUTLABELTEMPLATE_DATALIST_2
Displays a list of label templates associated with a business process output.
Parameters
Parameter | Parameter Type | Mode | Description |
---|---|---|---|
@BUSINESSPROCESSSTATUSID | uniqueidentifier | IN | Business process status ID |
@BUSINESSPROCESSOUTPUTTABLEKEY | nvarchar(255) | IN | Table key |
Definition
Copy
CREATE procedure dbo.[USP_BUSINESSPROCESSOUTPUTLABELTEMPLATE_DATALIST_2]
(
@BUSINESSPROCESSSTATUSID uniqueidentifier,
@BUSINESSPROCESSOUTPUTTABLEKEY nvarchar(255)
)
with execute as owner
as
set nocount on;
declare @ID uniqueidentifier;
declare @WORDTEMPLATEID uniqueidentifier;
declare @OUTPUTTABLE nvarchar(128);
declare @SQL nvarchar(max);
declare @RECORDS integer;
declare @TEMPLATES table ([ID] uniqueidentifier, [WORDTEMPLATEID] uniqueidentifier, [LABELTEMPLATENAME] nvarchar(255), [RECORDS] integer);
insert into @TEMPLATES
(
[ID],
[WORDTEMPLATEID],
[LABELTEMPLATENAME]
)
select
[BUSINESSPROCESSOUTPUTTEMPLATE].[ID],
[BUSINESSPROCESSOUTPUTTEMPLATE].[WORDTEMPLATEID],
[BUSINESSPROCESSOUTPUTTEMPLATE].[LABELTEMPLATENAME]
from dbo.[BUSINESSPROCESSOUTPUTTEMPLATE]
where [BUSINESSPROCESSOUTPUTTEMPLATE].[BUSINESSPROCESSSTATUSID] = @BUSINESSPROCESSSTATUSID
and [BUSINESSPROCESSOUTPUTTEMPLATE].[BUSINESSPROCESSOUTPUTTABLEKEY] = @BUSINESSPROCESSOUTPUTTABLEKEY
and [LABELTEMPLATE] is not null;
select @OUTPUTTABLE = [TABLENAME] from dbo.[BUSINESSPROCESSOUTPUT] where [BUSINESSPROCESSSTATUSID] = @BUSINESSPROCESSSTATUSID and [TABLEKEY] = @BUSINESSPROCESSOUTPUTTABLEKEY;
set @SQL = 'select @RECORDS = count(*) from dbo.[' + @OUTPUTTABLE + '] where [WORDTEMPLATEID] = @WORDTEMPLATEID;';
declare TEMP cursor local fast_forward for
select [ID], [WORDTEMPLATEID] from @TEMPLATES;
open TEMP;
fetch next from TEMP into @ID, @WORDTEMPLATEID;
while (@@FETCH_STATUS = 0)
begin
exec sp_executesql @SQL, N'@RECORDS integer output, @WORDTEMPLATEID uniqueidentifier', @RECORDS = @RECORDS output, @WORDTEMPLATEID = @WORDTEMPLATEID;
update @TEMPLATES set [RECORDS] = @RECORDS where [ID] = @ID;
fetch next from TEMP into @ID, @WORDTEMPLATEID;
end
close TEMP;
deallocate TEMP;
select
[ID],
[WORDTEMPLATEID],
[LABELTEMPLATENAME],
[RECORDS]
from @TEMPLATES
order by [LABELTEMPLATENAME];
return 0;