工作流如何实现任意节点的跳转?

     在一个工作流引擎系统中往往会有非常复杂的流程,包括并行节点的退回,嵌套并行节点的退回以及任意跳转,甚至说加签之类的场景。

     盘古BPM工作流引擎专门就是为中国式流程量身打造的一款新的工作流引擎框架,因此呢,在设计的时候,已经考虑到这些问题。不管是任意节点的跳转或者说任务的退回和撤销操作,往往呢会考虑到如下几个因素.

      任意节点跳转的流程,如果按照BPM2.0的标准,我们需要在模板中绘制很多的连线,那这样的话就会导致这个流程图非常的庞大,而且看起来也不是特别的美观,那因此在实现过程中,我们往往需要期望通过节点进行操作,而不是通过连线。这种方式如何进行实例的动态化操作呢。

   怎么去任意任意的进行跳转呢?大概可以分为如下几个场景。

下面以几个案例为阐述目标,我们来进一步探讨一下,这些细化场景如下。

1对1结构

工作流退回

任意节点跳转实现

     打开我的工作台找到模型管理,然后点击费用报销流程,再次点击编辑。打开模型,目前的这个流程已经提前绘制好了。

费用报销流程

那接下来呢,我们重点来看一下啊,刚才我们说的几种场景怎么去配置?首先选择了任意一个节点,然后点击基础设置,点击节点属性,如下图所示:

 

目前盘古BPM工作流引擎支持如下4种模式。

    对于并行网关呢,因为涉及到嵌套的问题了,所以说呢,盘古BPM工作的一个引擎在设计的时候呢,是支持用户为任务节点去打一个标签,你可以标记哪些节点是并行的?而不是通过程序去计算哪些节点是并行的,那这样的话呢可能有两个好处,第一呢出错的几率更低,第2种呢,就是可以用户去控制哪些是并行的以及哪些不是并行的。

    那接下来呢,我们再来看一下并行节点怎么去打这个标记的。如下图所示:

并行网关打标记

 

      我们来看一下怎么去启动实例呢,点击工作台,然后点击费用报销流程再次点击启动,那就可以看到这个流程了,那看到这个流程之后呢,我们点击启动就可以,然后呢,我们就可以查询到我们的代办任务来进行任务的完成。     

     在完成任务的时候呢,我们就可以看到几个按钮,那那其中有一点需要注意,有一个退回,还有一个任意跳转节点,那不管是任意跳转或者是退回功能,它本质上都是跳转的操作。这两个节点到底有什么不一样的地方呢?任意节点的退回来说白了就是不需要算法去控制,你可以任意的去进行跳转,。呃,对于退回按钮功能来说呢啊,它退回的时候呢,有一个前提条件,那就是刚才我们上文提到的,怎么去配置这个退回的一些策略。

工作流退回

      我们点击这个退回操作,那这个地方呢,它会弹出来一个框,那这个框呢,它需要选择是下一步节点的这个处理人以及退回意见,那这样的话下一个节点呢就可以可以看到这个地方的意见,这样的话可能涉及到也是比较人性化的。那差不多呢,关于退回操作以及任意节点的操作呢,我们大概就暂时先说到这个地方。

总结

     那接下来我们再来简单总结一下。那对于退回以及任意节点跳转呢?需要注意一点,对于任意节点的跳转呢,,它不需要这个策略去控制,但是对于退回呢,它需要很多策略去配合起来去使用,那这一点大家一定要注意,如果说嗯你想偷懒一下,那也可以我们直接使用任意节点,你也需要去为这些节点去配置不同的按钮,因为这些按钮都是都是可以去配置的。退回按钮使用起来风险相对来说是比较低,因为可以人为去控制它能跳转到哪些节点,大家可以结合着这个实际情况来进行使用。

相关教程