本帖最后由 Erik.Xue 于 2022-8-24 11:26 编辑
8.0新版本,我们推出了新的流程,自此也为活字格引入了一种新的流程使用模式,那就是“流程中心”:
当然,在很多已有的BPMN引擎中,都是使用流程中心对流程统一进行管理的,活字格也是在向这个方向靠拢不过,因为旧版本的流程是完全依赖于数据表的,所以很多从旧版本迁移过来的小伙伴可能会有一些习惯,还是希望创建一条数据,直接让数据驱动流程。
除了上面提到的情况,还有一种常见的场景,可能也需要老版本的流程发起方式。比如说一个系统,发起流程和审批的角色分属不同的管理层级,例如请假流程中的请假人和审批人,投诉流程中的普通用户和技术支持,他们期望的流程使用方式肯定不一样。作为一名投诉的客户,我肯定是希望直接有一个入口让我填单,然后直接把投诉流程发起了,而不是还要在一个“流程中心”中寻找我希望发起的流程。
那么在新版本的流程中,该如何实现上述场景呢?其实非常的简单,我们以一个简单的请假流程为例:
注意这个流程中是没有填单环节的,因为我们需要在流程发起前,先填写表单,然后在新增数据的时候去发起流程。那么我们只需要像一个普通的数据填报页面一样去设计,然后在新增数据的环节,添加一个发起流程的命令,并且注意关联数据表:
就可以在添加数据后,发起流程,并且还关联到我们当前行的数据了~
如果我们还希望业务数据像老版本一样和流程进行关联,那我们可以在发起流程命令后,再加一个更新数据表的命令,把当前的流程实例ID保存在业务表中的一个字段中:
可以看到,在操作完成后,业务表中就会存储对应的流程实例ID,那么当我们希望在业务表中去寻找当前流程的一些数据,就非常轻松了:
是不是非常简单呢?给大家总结一下要点:
1、此种方式适合填单环节不在流程中,需要先填写数据,在保存时同步发起流程的场合;
2、此种方式适合发起人不在流程中心中处理流程,而审批人在流程中心处理流程的场合;
3、发起一条流程后,会有一个流程实例与该条业务数据一一对应,所以需要有一个字段来存储对应的流程实例ID。
最后附上本帖的demo:
业务数据关联新版流程 8.0.3.0.fgcc
(511.55 KB, 下载次数: 685)
|