zoukankan      html  css  js  c++  java
  • 驰骋工作流引擎设计系列05 启动流程设计

     

    启动流程设计

    第1节. 关键字

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

    第1节. 启动流程设计

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

    1.1.1: 启动过程图

    image

    image

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

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

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

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

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

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

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

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

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

    1.1.3: 接口定义 Node_CreateBlankWork(String flowNo)

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

    image

    生成一个序列号的定义:

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

    image

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

  • 相关阅读:
    Windows下Jupyter notebook 更改工作目录
    AttributeError: Can only use .str accessor with string values, which use np.object_ dtype in pandas
    python中sorted函数
    U3d学习001-RollBox例子
    猴哥来了-游戏开发记录17-微信排行榜bug
    写在自己40岁生日,勉励自己,再度出发!
    python网页爬虫开发之一
    python学习笔记之二
    python学习笔记之一
    conda和pip环境管理
  • 原文地址:https://www.cnblogs.com/mengjuan/p/10233805.html
Copyright © 2011-2022 走看看