USP_SEARCHLIST_BBWORKFLOWINSTANCEINFO

Searches for a workflow instance record

Parameters

Parameter Parameter Type Mode Description
@LOOKUPID nvarchar(100) IN Lookup ID
@BBWORKFLOWCATALOGID uniqueidentifier IN Workflow type
@STARTEDAFTERDATE datetime IN Started on or after
@STARTEDBEFOREDATE datetime IN Started before
@ONLYRUNNING bit IN Only running workflows
@MAXROWS smallint IN Input parameter indicating the maximum number of rows to return.

Definition

Copy


CREATE procedure dbo.USP_SEARCHLIST_BBWORKFLOWINSTANCEINFO
(
    @LOOKUPID nvarchar(100) = null,
    @BBWORKFLOWCATALOGID uniqueidentifier = null,
    @STARTEDAFTERDATE datetime = null,
    @STARTEDBEFOREDATE datetime = null,
    @ONLYRUNNING bit = 0,
    @MAXROWS smallint = 500
)
as
    set @LOOKUPID = dbo.UFN_SEARCHCRITERIA_GETLIKEPARAMETERVALUE(@LOOKUPID, 0, null);

    select 
        WI.ID,
        WI.LOOKUPID, 
        WC.NAME AS CATALOGNAME,
        WI.WORKFLOWSTARTDATE,
        WI.WORKFLOWENDDATE,
        WI.ISRUNNING,
        WI.COMPLETIONSTATE,
        coalesce(nullif(STARTAU.DISPLAYNAME, ''), nullif(STARTAU.USERNAME, ''), '') AS STARTEDBYUSER

    from dbo.BBWORKFLOWCATALOG as WC
        inner join dbo.BBWORKFLOWINSTANCEINFO AS WI
        left outer join dbo.APPUSER as STARTAU
        on WI.INITIATEDBY_APPUSERID = STARTAU.ID
        on WC.ID = WI.BBWORKFLOWCATALOGID

    where
        ((@BBWORKFLOWCATALOGID is null) or (WI.BBWORKFLOWCATALOGID=@BBWORKFLOWCATALOGID))
        and
        (
            ((@ONLYRUNNING is null) or(@ONLYRUNNING = 0)) 
            or
            (WI.ISRUNNING = 1
        )
        and
        ((@STARTEDAFTERDATE is null) or (WI.WORKFLOWSTARTDATE >= @STARTEDAFTERDATE)) and
        ((@STARTEDBEFOREDATE is null) or (WI.WORKFLOWSTARTDATE < @STARTEDBEFOREDATE)) and
        ((@LOOKUPID is null) or (WI.LOOKUPID like @LOOKUPID))

    order by WORKFLOWSTARTDATE DESC