使用 HZERO 流程图编辑器
此功能用于维护工作流中的流程定义关联的流程图。
流程图编辑器概览
流程图编辑器分为四个部分:
-
屏幕中间空白区域为流程图编辑器的画布
-
屏幕左侧为BPMN元素的工具面板,您可以把需要的元素拖拽到画布中,这些元素会在本章的后面部分会逐一介绍,它们是:
开始节点
、结束节点
、人工任务
、服务任务
、子流程
、调用活动
、单一网关
、并行网关
、泳道
、区域
-
屏幕右侧是选中的元素的属性,当选择空白画布时,默认显示整个流程图的属性
-
屏幕顶部为流程编辑器的工具栏,包含:
保存
、删除
、重做
、撤销
、垂直对齐
、水平对齐
、相同尺寸
、放大
、缩小
、缩小到实际大小
、缩放到合适大小
、添加节点
、移除节点
下面,BPMN元素面板中的各个元素进行逐一介绍
开始节点
开始事件用来指明流程在哪里开始,其属性包括:
-
元素 ID :元素的唯一标识
-
名称 : 开始节点的名称
-
流程表单 : 开始节点对应的流程表单
-
表单属性 :开始节点存储的表单属性
-
监听器 : 配置开始节点的监听器
当我们点击开始节点时,节点下方会显示一排工具栏,当我们点击工具栏可以添加后续节点或者删除当前节点,从左至右分别是:删除
、添加一个人工任务
、添加一个结束节点
、添加一个单一网关
、添加一个顺序跳转线
,下图显示了如果点击结束节点按钮后生成的效果
当我们点击监听器
按钮时,我们可以配置当流程开始时触发的监听器,监听器类型可以选择开始
或者是撤销
,服务下拉框内的服务是在工作流
->服务定义
功能内定义的服务任务
类型的服务
监听器类型包括:
-
开始
:当流程启动时触发相关监听器 -
撤销
:当流程被撤销时触发相关监听器
结束节点
结束节点表示这一个流程的结束,在结束节点上,其属性包括:
-
元素 ID: 结束节点的唯一标识
-
名称: 结束节点的名称
-
监听器: 配置结束节点的监听器
从上图中我们可以看出,结束节点的监听器类型,只能选择结束
,在选择相应的服务以后,在流程结束时,会自动触发该监听器
人工任务
一般的业务流程大多都会有人的参与,因此用户任务就是最常用的任务,当流程到达用户任务时,用户任务会被分配到特定的用户或者用户组,从下图中我们可以看出,用户任务可以配置的属性有:
-
元素 ID : 人工任务的唯一标识
-
名称 : 人工任务的名称
-
审批方式 : 选择审批方式,可以在
工作流
->服务定义
进行编辑或者新增,服务类型为审批方式
的服务任务 -
审批方式变量: 设置审批方式的变量
-
审批规则: 选择审批任务的规则,后面会详细介绍
-
自动抄送: 是否允许自动抄送,可以选择自动抄送的规则,后面会详细介绍
-
审批动作配置 : 可以勾选
审批同意
、审批拒绝
、加签
、转交
-
拒绝后通知审批人 : 当连续多个审批任务由不同人审批时,前一个审批人通过,后一个审批人拒绝,那么会自动通知前一个审批人
-
已审批自动同意 : 当连续两个审批任务都是由同一个审批人审批时,审批人同意一地个审批任务,后一个审批任务自动同意
-
允许撤回 : 是否允许撤回,勾选后在
工作流
->我发起的流程
内可以进行撤回操作 -
允许催办 : 是否允许催办,勾选后在
工作流
->我发起的流程
内可以进行催办操作 -
流程表单 : 查看流程表单
-
表单属性 : 查看流程表单的属性
-
监听器 : 设置监听器,后面会详细介绍
人工任务-审批方式
当点击审批方式下拉框时,可以选择在工作流
->服务任务
中定义的审批方式
类型的服务任务
也可以在工作流
->服务任务
中对审批方式进行设置:
人工任务-审批规则
当我们点击审批规则的设置按钮时,我们可以选择可以选择在工作流
->服务任务
中定义的审批规则
类型的服务任务
人工任务-自动抄送
自动抄送的抄送规则,和审批规则
一样,也是可以选择在工作流
->服务任务
中定义的审批规则
类型的服务任务
人工任务-监听器
在人工任务-监听器中可以配置用户任务监听器,监听器的类型可以选择的类型有
创建
:在用户任务创建时触发分配
: 在用户任务分配给指定用户时触发完成
: 当用户任务完成后触发删除
: 当用户任务被删除时触发
服务下拉框内的服务是在工作流
-> 服务定义
功能内定义的服务任务
类型的服务
服务任务
服务任务定义了一个任务,这个任务在工作流流传到该节点时自动执行在配置的服务任务,其属性包括:
-
元素 ID : 服务任务的唯一标识
-
名称 : 服务任务的名称
-
异步: 是否异步执行
-
服务任务: 选择一个要执行的服务任务
子流程
子流程是一种特殊的流程活动,它可以包含其他的流程元素,例如流程任务
、流程网关
、流程事件
和顺序流
等。
其属性包括:
-
名称: 子流程的名称
-
异步: 是否开启异步执行
-
作为子流程的事务
单一网关
单一网关, 用来在流程中实现决策。 当流程执行到这个网关,工作流引擎会自动判断网关上的条件,仅执行条件符合的顺序流,单一网关就好像一个人在分岔路口,只能选择一条路前进,而如何选择前进的路,由条件决定。其属性包括:
- 名称: 单一网关的名称
- 异步: 是否开启异步执行
下面这个简单的例子,我们可以看出,在单一网关的输出执行流上设置跳转条件,在这个例子中,上级主管审批
节点后会进入单一网关,当审批同意时,进入人事助理审批
节点,如果审批拒绝,则进入调整请假请求
节点
跳转条件可以在工作流
->服务定义
中定义一个服务类别为跳转条件
的服务,当该服务返回结果为true
时,单一网关会执行该执行流
并行网关
并行网关用于表示流程的并发,并行网关可以放一个执行流变为多个同时执行的并发执行流,也可以让多个执行流合并为一个执行流,因此并行网关对执行流会有两种行为:
分岔(fork)
: 表示为每条从并行网关出来的顺序流建立一个并行的执行流合并(join)
: 表示所有到达并行网关的并行执行流将会被合并
并行网关也可以配置是否异步
和名称
,下面是一个简单的示例
当请假人填写完申请信息后,需要同时由人事审批和总监审批,两个并行任务完成后,最后才到总经理审批