Skip to content

8.6 自动化和工作流

在工作流中,有不少的行为都需要搭配自动化来满足一些特定的需求场景。所以在自动化中,在创建步骤时有一个工作流分组,其中都是与工作流相关的自动化步骤,此处将工作和自动化的关系进行说明。

8.6.1 工作流中调用自动化的地方

在工作流中,为了达到更好的衔接效果,在多个地方都支持调用自动化:

表达式中:

在工作流中如用户任务的处理人等地方的表达式,支持调用自动化,来满足各种复杂的需求场景。例如在用户任务的[处理人]配置项中,我们可以通过自动化获取处理人,此处需要通过返回用户的id,返回结构如下:

ek5veueb6c9zg
image-20231201082955221

用户任务-任务完成后执行自动化:

在用户任务的任务设置板块,有配置项[任务完成后执行自动化],在此处设置的自动化将在任务完成后被执行。这里的自动化程序接收一个参数,类型为BpmnTaskArgs,结构如下:

属性类型说明
procInstIdString工作流实例ID
procDefIdString工作流定义ID
activityIdString当前服务任务ID
taskIdString当前用户任务ID

假如在当前案例场景中,我们希望在节点1任务完成后调用自动化修改节点1审核时间为当前日期,可以按下图进行配置:

节点1配置:

image-20231201084326094

自动化配置:

image-20231201084301358

其中获取工作流变量配置如下:

image-20231201084828136

更新记录的配置如下:

image-20231201084751005

全局设置-事件监听:

在工作流的全局设置中的事件监听板块,支持针对工作流设置监听器,当监听事件发生后将调用一个自动化。当前支持的监听事件有:任务创建后、任务指派后、任务完成后、任务属主变更后、节点开始后、节点完成后、节点取消后、多实例节点开始后、多实例节点完成后、多实例节点满足条件完成后、多实例节点取消后、流程创建后、流程开始后、流程完成后、流程取消后。

在工作流监听器中,这里的自动化程序接受一个参数,类型为BpmnEvent

属性类型说明选项值
typeString事件类型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 节点取消后
taskTask当前任务
instanceInstance工作流实例

服务任务:

在工作流中,有一个服务任务节点,可在服务任务中配置一个自动化,当流程流程此处时将执行该自动化。这里的自动化程序接受一个参数,类型为BpmnTaskArgs,结构如下:

属性类型说明
procInstIdString工作流实例ID
procDefIdString工作流定义ID
activityIdString当前服务任务ID
taskIdString当前用户任务ID

8.6.2 自动化中工作流相关的步骤

在自动化中有工作流相关的步骤,此处对这些步骤进行说明:

打开工作流创建页面:

使用自动化自定义打开工作流的创建页面,帮助文档

配置:

image-20231201085522438image-20231201085532955

效果展示:

image-20231201085602471

设置工作流变量:

向工作流中设置的变量,帮助文档

配置:

image-20231201085619977image-20231201085631398

效果展示:

image-20231201085837300image-20231201085958666

获取工作流实例:

从工作流实例中获取变量,帮助文档

配置:

image-20231201085856470image-20231201085905159

效果展示:

image-20231201085939081image-20231201090016367

查询工作流实例:

根据条件查询工作流实例的列表,帮助文档

配置:

image-20231201090038872image-20231201090048210

效果展示:

image-20231201090110021image-20231201090721793

查询工作流任务:

查询工作流实例的任务列表,帮助文档

配置:

image-20231201090946174image-20231201090957916

效果展示:

image-20231201091016196image-20231201091026685

设置任务处理人:

设置工作流任务的处理人,帮助文档

配置:

image-20231201091123919image-20231201091132215

效果展示:

image-20231201091227426

跳转任务到目标节点:

将工作流任务完成并跳转到指定节点,帮助文档

配置:

image-20231201091309242image-20231201091318211

效果展示:

image-20231201091348804

撤销工作流实例:

撤销工作流实例,撤销后所有关联的工作流任务也会设置为完成,帮助文档

配置:

image-20231201091552874image-20231201091601078

效果展示:

image-20231201091627788

完成工作流任务:

完成工作流任务,任务完成后根据流程图的设置进入到下一个节点,帮助文档

配置: image-20231201091719941

image-20231201091727411

效果展示:

image-20231201091755356

删除工作流实例:

删除工作流实例,删除后所有关联的工作流任务也会删除,帮助文档

配置:

image-20231201091838542image-20231201091847397

效果展示:

image-20231201091910228