博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
驰骋工作流引擎设计系列05 启动流程设计
阅读量:6840 次
发布时间:2019-06-26

本文共 1185 字,大约阅读时间需要 3 分钟。

hot3.png

 

启动流程设计

第1节. 关键字

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

第1节. 启动流程设计

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

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

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

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

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

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

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

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

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

创建一个空白的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需要父子流程,就需要写入父流程的信息。

--Posted from Rpc

转载于:https://my.oschina.net/mengjuan/blog/2998358

你可能感兴趣的文章
Android底层学习之Linux基础
查看>>
手摸手教你写 Kubernetes 的 golang 服务
查看>>
JAVA学习day03
查看>>
p2p-如何拯救k8s镜像分发的阿喀琉斯之踵
查看>>
Atom 1.36.1 发布,跨平台文本编辑器
查看>>
流行 Ruby 库曝出恶意后门代码,作者未知
查看>>
2018-过年记
查看>>
动态列报表的制作
查看>>
通通玩blend美工(5)——旋转木马,交互性设计
查看>>
得到简历方法
查看>>
WebView与Javascript交互及JS的注入
查看>>
记录一次docker集群中搭建mongodb副本集
查看>>
[剑指offer] 变态跳台阶
查看>>
首次公开!阿里搜索中台开发运维一体化实践
查看>>
面象对象设计6大原则之四:接口隔离原则
查看>>
Ansible介绍、安装、远程执行命令、拷贝文件或者目录、远程执行脚本
查看>>
异常中要了解的Throwable类中的几个方法
查看>>
【前端,干货】react and redux教程学习实践(二)。
查看>>
Fiddler 抓包浅析(二)
查看>>
Ant + Tomcat + Jenkins 实现自动化部署
查看>>