首页 > 代码库 > 如何设置流程的默认版本

如何设置流程的默认版本

业务流程用工作流软件管理系统来管理流程后,业务的流转都用流程的节点来标识。业务的办理信息在流程节点的表单中完成,录入,保存,业务流转,条件流,顺序流,分支流,并行流,等等。用工作流系统来管理一目了然。业务流程启动后,业务的流转就按照流程设计图来流转和办理。当后续业务有了修改后,流程就需要增加版本,不能直接修改原有的流程,否则已经运行结束了的流程实例就没有追踪的轨迹图了。正在运行的流程实例也可能发生紊乱,所以必须引入流程的版本管理。

当业务流程新建的时候,是1.0的版本,后续有了修改后,增加到2.0版本;已经运行结束了的流程实例还是依照1.0的版本,正在运行的流程实例,也还是依照1.0的版本继续运行。新启动的流程实例,可以按1。0的版本运行,也可以用新的版本来运行。 正在运行的流程实例也可以通过切换版本,切换到新的版本上继续运行,这种情况需要考察流程实例运行的轨迹,新的版本的修改是否会影响到流程实例;如新的2.0的版本修改的是最后一个节点,已经运行的流程实例才刚开始执行,这种情况就可以切换到新的版本。切换版本的功能需要分配给有权限的人员来处理,不是任意的用户都可以操作。

一般来说,投入正式运行了的业务流程,应该将业务流程发布,使得业务流程不能再修改了。当有需求变化,需要修改流程,则在原来的基础上增加新的版本。业务的变更,流程的修改,增加新版本,新版本的发布,可以由系统设计人员(或者有相关技术能力的用户操作人员)来完成。

新版本业务流程的发布可以增加新的菜单来做,也可以直接修改原有菜单的定义,使之切换到新的版本,老版本则不再使用。

如果业务人员觉得有了新的业务流程后,发布比较麻烦(需要修改菜单的定义),可以采用默认版本的方式来发布。即菜单定义的时候,只指定流程名称,不指定流程版本,流程启动的时候,每次都找最新的流程版本,这样每次的业务流程变更,都只需要增加版本,自动发布,不需要修改菜单定义了。

当业务流程修改后,不是立即就需要按新的版本启动流程,则可以设置默认版本,流程在启动时,没有指定具体的流程版本的,则先找是否有设置默认版本,设置了默认版本的则启动此版本的流程实例,没有默认版本的,则取流程的最新的版本。

当流程运行了一定的时间后,有了多个版本的流程。则通过指定默认的版本,可以不修改菜单定义,启动任意的版本,不拘泥于只取最新的版本。

eworkflow工作流软件中,这样来实现,在流程定义的接口中,增加获取默认流程版本的api函数,当启动流程实例时,没有指定具体的版本,则先通过此函数获取到默认的版本,再启动此版本的流程实例。

java的流程引擎接口定义

 

c#的流程引擎接口定义

获取默认版本的函数 流程启动的函数,带版本号和不带版本号的