Java教程

驰骋工作流引擎设计系列05 启动流程设计

本文主要是介绍驰骋工作流引擎设计系列05 启动流程设计,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

 

第1节. 关键字

驰骋工作流引擎 流程快速开发平台 workflow ccflow jflow

第1节. 启动流程设计

流程启动是流程运动的第一个环节,有如下几个步骤,选择一个流程模版,进入流程启动程序,其次检查一下该流程模版是否可以被该人员发起,不能发起提示错误信息。

1.1.1: 启动过程图

 

 

 

 

 

 

 

写入流程业务表一条记录。

 

1.1.1: 流程状态变化的概要说明

操作员启动一个流程,创建一个workid,这个时候的状态是空白状态,也叫站位状态,如果在启动之前已经有了这个站位状态,它就不在创建新的workid而是取出来这个workid作为当前流程的实例。

如果启用了草稿规则,并且允许有草稿的模式下:

这个时间,如果用户点击保存该状态从空白状态转化为草稿状态,如果用户执行发送当前节点就运行到下一个节点上去了,当前状态变为运行中的状态。如果用户直接关闭了,这个时间的状态就是草稿状态,可以在草稿里找到这条实例记录。

如果不启用草稿,在这种模式下:

这个时间,如果用户点击保存,仍然是空白状态。用户点击发送后,由空白状态转化为运行中状态,当前节点运动到下一个节点上去,下一个节点的工作人员就产生了待办。

如果上一个节点退回了,执行了退回操作,当前的流程状态就变成为退回状态,上一个节点人被退回人就有了待办工作,被退回人打开后,就可以看到退回消息,他点击发送后又变成了运行中的状态,发送到下一个节点上去了。

流程走到最后一个节点,点击发送,整个流程就结束了,状态变为流程完成状态。

1.1.2: 接口定义 Node_CreateBlankWork(String flowNo)

创建一个空白的WorkID,需要指定一个流程编号,返回一个workid,开发人员拿到这个workid后,就可以作为主键,保存开始表单数据了。

 

 

 

 

 

生成一个序列号的定义:

 

 

 

 

该方法有多个变形,在以后的父子流程的时候用到:

 

 

 

在创建workid的时候,如果用到了ccbpm的内部表单,需要把数据存储到业务表里,要给主表,从表数据传递数据,主表的数据传递采用hashtable的key, value 的方式,对于从表的数据传递采用的是dataset的模式。

public static long Node_CreateBlankWork(String flowNo, java.util.Hashtable ht, DataSet workDtls, String starter,

String title, long parentWorkID, long parentFID, String parentFlowNo, int parentNodeID, String parentEmp,

int jumpToNode, String jumpToEmp)

 

如果创建workid需要父子流程,就需要写入父流程的信息。

 

===OVER==

这篇关于驰骋工作流引擎设计系列05 启动流程设计的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!