Chelsey.Wang 发表于 2022-7-8 09:26:04

一看就会,超有用活字格技能:一百五十一、业务数据关联新版流程

本帖最后由 Erik.Xue 于 2022-8-24 11:26 编辑

8.0新版本,我们推出了新的流程,自此也为活字格引入了一种新的流程使用模式,那就是“流程中心”:



当然,在很多已有的BPMN引擎中,都是使用流程中心对流程统一进行管理的,活字格也是在向这个方向靠拢;P不过,因为旧版本的流程是完全依赖于数据表的,所以很多从旧版本迁移过来的小伙伴可能会有一些习惯,还是希望创建一条数据,直接让数据驱动流程。


除了上面提到的情况,还有一种常见的场景,可能也需要老版本的流程发起方式。比如说一个系统,发起流程和审批的角色分属不同的管理层级,例如请假流程中的请假人和审批人,投诉流程中的普通用户和技术支持,他们期望的流程使用方式肯定不一样。作为一名投诉的客户,我肯定是希望直接有一个入口让我填单,然后直接把投诉流程发起了,而不是还要在一个“流程中心”中寻找我希望发起的流程。

那么在新版本的流程中,该如何实现上述场景呢?其实非常的简单,我们以一个简单的请假流程为例:



注意这个流程中是没有填单环节的,因为我们需要在流程发起前,先填写表单,然后在新增数据的时候去发起流程。那么我们只需要像一个普通的数据填报页面一样去设计,然后在新增数据的环节,添加一个发起流程的命令,并且注意关联数据表:



就可以在添加数据后,发起流程,并且还关联到我们当前行的数据了~
如果我们还希望业务数据像老版本一样和流程进行关联,那我们可以在发起流程命令后,再加一个更新数据表的命令,把当前的流程实例ID保存在业务表中的一个字段中:



可以看到,在操作完成后,业务表中就会存储对应的流程实例ID,那么当我们希望在业务表中去寻找当前流程的一些数据,就非常轻松了:



是不是非常简单呢?给大家总结一下要点:
1、此种方式适合填单环节不在流程中,需要先填写数据,在保存时同步发起流程的场合;
2、此种方式适合发起人不在流程中心中处理流程,而审批人在流程中心处理流程的场合;
3、发起一条流程后,会有一个流程实例与该条业务数据一一对应,所以需要有一个字段来存储对应的流程实例ID。

最后附上本帖的demo:



因为正式版已上线,如果大家对新版流程有各种疑惑,都可以在帮助手册进行查询:itwn:希望大家早日上手新版本流程,玩出更加灵活的场景~
页: [1]
查看完整版本: 一看就会,超有用活字格技能:一百五十一、业务数据关联新版流程