Appearance
8.6 自动化和工作流
在工作流中,有不少的行为都需要搭配自动化来满足一些特定的需求场景。所以在自动化中,在创建步骤时有一个工作流分组,其中都是与工作流相关的自动化步骤,此处将工作和自动化的关系进行说明。
8.6.1 工作流中调用自动化的地方
在工作流中,为了达到更好的衔接效果,在多个地方都支持调用自动化:
表达式中:
在工作流中如用户任务的处理人等地方的表达式,支持调用自动化,来满足各种复杂的需求场景。例如在用户任务的[处理人]配置项中,我们可以通过自动化获取处理人,此处需要通过返回用户的id,返回结构如下:
ek5veueb6c9zg
用户任务-任务完成后执行自动化:
在用户任务的任务设置板块,有配置项[任务完成后执行自动化],在此处设置的自动化将在任务完成后被执行。这里的自动化程序接收一个参数,类型为BpmnTaskArgs
,结构如下:
属性 | 类型 | 说明 |
---|---|---|
procInstId | String | 工作流实例ID |
procDefId | String | 工作流定义ID |
activityId | String | 当前服务任务ID |
taskId | String | 当前用户任务ID |
假如在当前案例场景中,我们希望在节点1任务完成后调用自动化修改节点1审核时间
为当前日期,可以按下图进行配置:
节点1配置:
自动化配置:
其中获取工作流变量配置如下:
更新记录的配置如下:
全局设置-事件监听:
在工作流的全局设置中的事件监听板块,支持针对工作流设置监听器,当监听事件发生后将调用一个自动化。当前支持的监听事件有:任务创建后、任务指派后、任务完成后、任务属主变更后、节点开始后、节点完成后、节点取消后、多实例节点开始后、多实例节点完成后、多实例节点满足条件完成后、多实例节点取消后、流程创建后、流程开始后、流程完成后、流程取消后。
在工作流监听器中,这里的自动化程序接受一个参数,类型为BpmnEvent
属性 | 类型 | 说明 | 选项值 |
type | String | 事件类型 | TASK_CREATED 任务创建后 TASK_ASSIGNED 任务指派后 TASK_COMPLETED 任务完成后 TASK_OWNER_CHANGED 任务属主变更后 TASK_DUEDATE_CHANGED 任务逾期时间变更后 PROCESS_CREATED 流程创建后 PROCESS_STARTED 流程开始后 PROCESS_COMPLETED 流程完成后 PROCESS_CANCELLED 流程取消后 ACTIVITY_STARTED 节点开始后 ACTIVITY_COMPLETED 节点完成后 ACTIVITY_CANCELLED 节点取消后 |
task | Task | 当前任务 | |
instance | Instance | 工作流实例 |
服务任务:
在工作流中,有一个服务任务节点,可在服务任务中配置一个自动化,当流程流程此处时将执行该自动化。这里的自动化程序接受一个参数,类型为BpmnTaskArgs
,结构如下:
属性 | 类型 | 说明 |
---|---|---|
procInstId | String | 工作流实例ID |
procDefId | String | 工作流定义ID |
activityId | String | 当前服务任务ID |
taskId | String | 当前用户任务ID |
8.6.2 自动化中工作流相关的步骤
在自动化中有工作流相关的步骤,此处对这些步骤进行说明:
打开工作流创建页面:
使用自动化自定义打开工作流的创建页面,帮助文档。
配置:
效果展示:
设置工作流变量:
向工作流中设置的变量,帮助文档。
配置:
效果展示:
获取工作流实例:
从工作流实例中获取变量,帮助文档。
配置:
效果展示:
查询工作流实例:
根据条件查询工作流实例的列表,帮助文档。
配置:
效果展示:
查询工作流任务:
查询工作流实例的任务列表,帮助文档。
配置:
效果展示:
设置任务处理人:
设置工作流任务的处理人,帮助文档。
配置:
效果展示:
跳转任务到目标节点:
将工作流任务完成并跳转到指定节点,帮助文档。
配置:
效果展示:
撤销工作流实例:
撤销工作流实例,撤销后所有关联的工作流任务也会设置为完成,帮助文档。
配置:
效果展示:
完成工作流任务:
完成工作流任务,任务完成后根据流程图的设置进入到下一个节点,帮助文档。
配置:
效果展示:
删除工作流实例:
删除工作流实例,删除后所有关联的工作流任务也会删除,帮助文档。
配置:
效果展示: