USP_BBWORKFLOW_TASK_ADD
Used by the workflow service to add a workflow task to a workflow inbox
Parameters
Parameter | Parameter Type | Mode | Description |
---|---|---|---|
@ID | uniqueidentifier | INOUT | |
@CHANGEAGENTID | uniqueidentifier | IN | |
@BBWORKFLOWINSTANCEINFOID | uniqueidentifier | IN | |
@WORKFLOWINBOXID | uniqueidentifier | IN | |
@TASKSUBJECT | nvarchar(255) | IN | |
@TASKDESCRIPTION | nvarchar(max) | IN | |
@DATEASSIGNED | datetimeoffset | IN | |
@DATEDUE | datetimeoffset | IN | |
@CATEGORY | nvarchar(50) | IN | |
@HIDDEN | bit | IN | |
@USERCANCANCEL | bit | IN | |
@USERCANCOMPLETE | bit | IN | |
@TASKPAGEID | uniqueidentifier | IN | |
@BBWORKFLOWBUSINESSACTIVITYID | uniqueidentifier | IN | |
@OWNER_APPUSERID | uniqueidentifier | IN |
Definition
Copy
CREATE procedure dbo.USP_BBWORKFLOW_TASK_ADD
@ID uniqueidentifier = null output,
@CHANGEAGENTID uniqueidentifier = null,
@BBWORKFLOWINSTANCEINFOID uniqueidentifier ,
@WORKFLOWINBOXID uniqueidentifier,
@TASKSUBJECT nvarchar(255),
@TASKDESCRIPTION nvarchar(max) = '',
@DATEASSIGNED datetimeoffset = null,
@DATEDUE datetimeoffset = null,
@CATEGORY nvarchar(50) = '',
@HIDDEN bit = 0,
@USERCANCANCEL bit = 0,
@USERCANCOMPLETE bit=0,
@TASKPAGEID uniqueidentifier = null,
@BBWORKFLOWBUSINESSACTIVITYID uniqueidentifier = null,
@OWNER_APPUSERID uniqueidentifier = null
/*
Used by the workflow service to add a workflow task to a workflow inbox
*/
as
set nocount on;
if @ID is null
set @ID = newid();
if @CHANGEAGENTID is null
exec dbo.USP_CHANGEAGENT_GETORCREATECHANGEAGENT @CHANGEAGENTID output;
declare @CURRENTDATE datetime;
set @CURRENTDATE = getdate();
if @DATEASSIGNED is null
set @DATEASSIGNED=getdate();
if @BBWORKFLOWBUSINESSACTIVITYID = '00000000-0000-0000-0000-000000000000' set @BBWORKFLOWBUSINESSACTIVITYID = null;
if @BBWORKFLOWBUSINESSACTIVITYID is not null
BEGIN
declare @BIZACTIVITY_PARENTWORKFLOWINSTANCEINFOID uniqueidentifier;
select @BIZACTIVITY_PARENTWORKFLOWINSTANCEINFOID = BBWORKFLOWINSTANCEINFOID from dbo.BBWORKFLOWBUSINESSACTIVITY where ID=@BBWORKFLOWBUSINESSACTIVITYID;
if @BIZACTIVITY_PARENTWORKFLOWINSTANCEINFOID <> @BBWORKFLOWINSTANCEINFOID
BEGIN
RAISERROR('The @BBWORKFLOWBUSINESSACTIVITYID value is not a valid ID for the BBWORKFLOWINSTANCEINFO record',16,10);
return 500;
END
END
if @OWNER_APPUSERID = '00000000-0000-0000-0000-000000000000' set @OWNER_APPUSERID = null;
begin try
insert into dbo.BBWORKFLOWTASK
(ID, BBWORKFLOWINSTANCEINFOID, BBWORKFLOWINBOXID, TASKSUBJECT, TASKDESCRIPTION, DATEASSIGNED, DATEDUE, CATEGORY, ADDEDBYID, CHANGEDBYID, DATEADDED, DATECHANGED, HIDDEN, USERCANCANCEL, USERCANCOMPLETE, TASKPAGEID, BBWORKFLOWBUSINESSACTIVITYID , OWNER_APPUSERID)
values
(@ID, @BBWORKFLOWINSTANCEINFOID, @WORKFLOWINBOXID, @TASKSUBJECT, @TASKDESCRIPTION, @DATEASSIGNED, @DATEDUE, @CATEGORY, @CHANGEAGENTID, @CHANGEAGENTID, @CURRENTDATE, @CURRENTDATE, @HIDDEN, @USERCANCANCEL, @USERCANCOMPLETE, @TASKPAGEID, @BBWORKFLOWBUSINESSACTIVITYID, @OWNER_APPUSERID );
if @HIDDEN = 0 --Do not send emails if the task is hidden
exec dbo.USP_WORKFLOWTASK_ASSIGNED_ALERT_SEND @ID;
end try
begin catch
exec dbo.USP_RAISE_ERROR;
return 1;
end catch
return 0;