类名
H3.DataModel.IWorkflowInstanceManager
接口清单
序号 | 接口名称 | 说明 |
1 | 创建一个流程实例 | |
2 | 创建一个默认的流程实例 | |
3 | 获取一个流程实例 | |
4 | 根据业务对象ID获取流程实例集合 | |
5 | 获得父流程的工作流信息 | |
6 | 删除流程实例 | |
7 | 发送消息给流程实例,以驱动流程实例的运行 |
基本用法
上述清单中的接口均归属在this.Engine.WorkflowInstanceManager
下,如要获取一个流程实例,可使用如下代码形式:
H3.Workflow.Instance.WorkflowInstance instance = this.Engine.WorkflowInstanceManager.GetWorkflowInstance("XXX");
其他接口使用方式与此类似。
接口说明
1. CreateInstance(string bizObjectId, string schemaCode, int workflowVersion, string instanceId, string originator, bool isChildInstance, string parentInstanceID, string parentActivityName, int parentActivityTokenId, bool notify)
1.1. 说明
创建一个流程实例。
1.2. 参数
参数名 | 说明 |
bizObjectId | 业务对象ID |
schemaCode | 表单编码 |
workflowVersion | 流程版本号 |
instanceId | 流程实例ID,如果为空则会自动生成 |
originator | 发起人 |
isChildInstance | 是否是子实例 |
parentInstanceID | 如果是子实例,则该项为父实例的ID |
parentActivityName | 如果是子实例,则该项为发起该实例的父实例的活动ID |
parentActivityTokenId | 如果是子实例,则该项为发起该实例的父实例的TokenID |
notify | 发送消息提醒标志,默认为 |
1.3. 返回值
类型 | 说明 |
string | 创建的实例ID |
2. CreateInstanceByDefault(string bizObjectId, string schemaCode, string originator)
2.1. 说明
创建一个默认的流程实例。
2.2. 参数
参数名 | 说明 |
bizObjectId | 业务对象ID |
schemaCode | 表单编码 |
originator | 发起人 |
2.3. 返回值
类型 | 说明 |
string | 创建的实例ID |
3. GetWorkflowInstance(string instanceId)
3.1. 说明
获取一个流程实例。
3.2. 参数
参数名 | 说明 |
instanceId | 实例ID |
3.3. 返回值
类型 | 说明 |
流程实例对象 |
4. GetWorkflowInstancesByBizObject(string schemaCode, string bizObjectId)
4.1. 说明
根据业务对象ID获取流程实例集合。
4.2. 参数
参数名 | 说明 |
schemaCode | 表单编码 |
bizObjectId | 业务对象ID |
4.3. 返回值
类型 | 说明 |
流程实例对象集合 |
5. GetParentInstanceInfo(string instanceId)
5.1. 说明
获得父流程的工作流信息。
5.2. 参数
参数名 | 说明 |
instanceId | 实例ID |
5.3. 返回值
类型 | 说明 |
父流程模板的基本信息 |
6. RemoveInstance(string instanceId, bool autoUpdateBizObject)
6.1. 说明
删除流程实例。
6.2. 参数
参数名 | 说明 |
instanceId | 要删除的流程实例ID |
autoUpdateBizObject | 删除之后,是否需要更新业务对象关联的流程实例ID |
6.3. 返回值
类型 | 说明 |
无 | 无 |
7. SendMessage(Message message)
7.1. 说明
发送消息给流程实例,以驱动流程实例的运行。
7.2. 参数
参数名 | 说明 |
message | 发送给流程实例的消息,详见 |
7.3. 返回值
类型 | 说明 |
消息处理结果 |
7.4. 示例
重新激活流程:
H3.Workflow.Messages.ActivateInstanceMessage actInsMessage = new H3.Workflow.Messages.ActivateInstanceMessage("流程Id"); this.Engine.WorkflowInstanceManager.SendMessage(actInsMessage);
结束流程:
H3.Workflow.Instance.WorkflowInstance instance = this.Engine.WorkflowInstanceManager.GetWorkflowInstance("流程Id"); H3.Workflow.Messages.FinishInstanceMessage cancelMessage = new H3.Workflow.Messages.FinishInstanceMessage("流程Id",(int)instance.FinalTokenId); this.Engine.WorkflowInstanceManager.SendMessage(cancelMessage);
取消流程:
H3.Workflow.Messages.CancelInstanceMessage cancelMessage = new H3.Workflow.Messages.CancelInstanceMessage("流程Id", false); this.Engine.WorkflowInstanceManager.SendMessage(cancelMessage);
文章反馈
*请选择您遇到的问题类型?
*请描述问题详情
支持上传9张图片且单张大小不超过3M