第1节. 关键字

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

第1节. 线性流程节点运动(发送)设计

发送就是从一个节点发送到另外一个节点,也可以说从一个节点运动到另外的节点上去。

1.1.1: 执行序列图(线性流程运动)

在计算发送到下一个节点动作里,请参考方向条件设计规则。

在计算到达节点的接受人范围动作里,请参考接收人规则设计。

在最后一个动作里“执行当前节点完成过程”,会对一些表产生影响,请参考下一章节。

1.1.2: 对相关的表影响

流程从一个节点运动到另外一个节点上,就需要影响流程状态,流程节点所在的位置变化,影响到流程引擎表,与流程业务表,轨迹表,本章节分别介绍了相关表的变化内容。

1.1.2.1: 对WF_GenerWorkflow 表的影响

WF_GenerWokFlow 流程引擎注册表。

字段名

中文名

解释

WorkID

工作ID

WFState

状态

设置为:运行中的状态

Title

标题

FK_Flow

流程模版编号

FK_Node

停留节点

设置为:当前停留的节点。

Starter

发起人

 

RDT

发起日期

 

TodoEmps

当前处理人

设置为:当前节点的工作接收人。

1.1.2.2: 对WF_GenerWorkerlist表的影响

工作人员列表: WF_GenerWokerList 用于记录运行中的业务流程工作人员的信息的表。对于一个流程模版,每个节点,每个流程实例,每个工作人员,仅仅并且只有一条数据,在该表里,在流程运行到结束后,该流程实例下的所有的人员数据,就会被清除掉。

一个流程实例从一个节点运动到另外一个节点需要变化到,当前节点工作人员的状态变化。到达的工作人员新增接受人数据,让该节点上的接受人产生待办工作。

对于当前节点该表的数据变化:

字段名

中文名

解释

WorkID

工作ID

主键

FK_Emp

状态

主键

FK_Node

标题

主键

IsPass

是否通过?

设置为:1标识已经通过。

IsRead

是否读取?

0=未读,1=已读

SDT

应完成日期

RDT

到达日期

CDT

实际完成日期

设置为:当前完成日期.

对与到达节点该表的数据变化:

对于产生的新的工作人员,每个人员都要新建一条记录

字段名

中文名

解释

WorkID

工作ID

主键

FK_Emp

状态

主键

FK_Node

标题

主键

IsPass

是否通过?

设置为:0=未通过

IsRead

是否读取?

设置为:0=未读

SDT

应完成日期

根据时效考核规则计算当前应该完成的时间

RDT

到达日期

设置为:当前日期

CDT

实际完成日期

设置为:null

1.1.2.3: 对NDxxxRpt业务表的影响

业务表包含10多个系统字段:

字段名称

类型

说明

OID

int

OID主键-与流程的workid一致

RDT

nvarchar

记录日期

Title

nvarchar

流程标题

FID

int

FID分合流用到

CDT

nvarchar

完成日期

Rec

nvarchar

记录人

Emps

nvarchar

操作员,多个用逗号分开。

FK_Dept

nvarchar

所在部门

FK_NY

nvarchar

年月,比如:2018-01,统计分析用.

MyNum

int

个数,统计分析用

PNodeID

int

父子流程所用

PrjName

nvarchar

工程名称

PrjNo

nvarchar

工程编号,工程流程所用

PEmp

nvarchar

父子流程所用

AtPara

nvarchar

参数属性

BillNo

nvarchar

单据编号

FlowNote

nvarchar

流程备注

GUID

nvarchar

唯一标识符

WFSta

int

简易状态

FlowStartRDT

nvarchar

发起日期

FlowEnderRDT

nvarchar

最后节点处理日期

FlowEndNode

int

设置为发送到最后节点.

FlowDaySpan

float

流程跨度天数,重新计算

PWorkID

int

父子流程所用

PFlowNo

nvarchar

父子流程所用

FlowEmps

nvarchar

设置为:流程参与人,增加当前人员

FlowEnder

nvarchar

设置为:最后处理人

FlowStarter

nvarchar

流程发起人

WFState

int

流程状态

1.1.2.4: 对NDxxTrack表的影响

增加一笔从节点,从人员,到节点,到人员的发送动作日志数据。

1.1.3: 发送的接口定义Node_SendWork

发送接口,就是发送调用的方法如下图所示:

简洁的发送方法:参数:flowNo, worked.

具有主表参数的发送方法:Node_SendWork(String flowNo, Int64 workid,Hashtable ht)

说明:如果发送的时候需要把业务主表的数据传入到系统中,就需要使用hashtable 这个参数,key value 的方式。

1.1.4: 万能发送的API

有一个重写的API,是愿意发送到本流程那个节点,就发送到那个节点,愿意发送到那个接受人,就发送到那个接受人,我们把这个API称为万能的API。

比如:当前节点,发送到下一个节点有分支。

代码: BP. Dev2Interface.Node_SendWork(‘001’,2232,0,null);

发送该流程让节点配置的方向条件与到达节点的接受人规则自动计算,自动计算到达的节点,自动计算到达节点的接收人。

代码: BP. Dev2Interface.Node_SendWork(‘001’,2232,105,null);

标识,发送到指定的节点105上去,并且105节点的接收人自动计算,就是按照节点配置的规则计算。

代码: BP. Dev2Interface.Node_SendWork(‘001’,2232,105,’zhangsan’);

标识,发送到指定的节点105上去,并且105节点的接收人设置为张三。

代码: BP. Dev2Interface.Node_SendWork(‘001’,2232,105,’zhangsan,lisi’);

标识,发送到指定的节点105上去,并且105节点的接收人设置为zhangsan与lisi两个人。

1.1.5: 发送返回的结果对象设计

概要说明:

执行发送结果发送成功后,需要把发送结果的变量返回过来,比如,发送到那里了?发送给那些人了?当前节点信息等等。这个对象就叫发送后返回对象。

发送后返回对象就是一系列变量。

请参考如下代码:

输出信息:

转载于:https://blog.51cto.com/14150825/2341493

驰骋工作流引擎设计系列07 线性流程节点运动(发送)设计相关推荐

  1. 驰骋工作流引擎设计系列04 流程引擎表结构的设计

    第1节. 关键字 驰骋工作流引擎 流程快速开发平台 workflow ccflow jflow 第1节. 流程引擎表结构的设计 流程引擎表是流程引擎控制流程运转的数据存储表,是整个流程引擎的核心表.理 ...

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

    2019独角兽企业重金招聘Python工程师标准>>> 启动流程设计 第1节. 关键字 驰骋工作流引擎 流程快速开发平台 workflow ccflow jflow 第1节. 启动流 ...

  3. 驰骋工作流引擎设计系列10时效考核规则设计

    第1节. 关键字 驰骋工作流引擎 流程快速开发平台 workflow ccflow jflow 第1节. 时效考核规则设计 考核是流程运行的副产品,业务搬到了计算机上,整个运行轨迹就会被有效的记录下来 ...

  4. 驰骋工作流引擎表单设计控件-字段类控件(2)

    2019独角兽企业重金招聘Python工程师标准>>> Technorati Tags: 开源工作流引擎, 驰骋.net工作流引擎, 开源表单引擎, ccform, ccflow, ...

  5. 开源驰骋工作流引擎设计ccflow已读回执设计

    为什么80%的码农都做不了架构师?>>>    驰骋工作流引擎设计ccflow已读回执 关键字:工作流引擎 已读回执 CCFlow 工作流程引擎已读回执 开源工作流引擎 工作流引擎已 ...

  6. 驰骋工作流引擎Silverlight版本的流程解析执行器-预计在6月份发布

    关键字: Silverlight 驰骋工作流引擎 流程解析执行器 关于silverlight 版本的流程解析执行器的问题 编写人: ccflow 发布日期: 2013/5/20 1, 为什么要开发Si ...

  7. 驰骋工作流引擎-API开发接口-重要的部分.

    驰骋工作流引擎-API开发接口-重要的部分. - 多看文档,少走弯路,学会使用ccbpm的api接口,让您的sdk表模式开发无忧. 登录与门户API 首先要进行代码集成与组织机构的集成 其次在自己的系 ...

  8. 驰骋工作流引擎2016年第1次组团培训日程

    驰骋工作流引擎2016年第1次组团培训日程 各位驰骋工作流引擎爱好者: 应各位驰骋工作流引擎爱好者的要求,公司在2016年2月29号至3月4号举行一次培训,由流程引擎总设计师周朋先生亲自授课. 日程安 ...

  9. 驰骋工作流引擎-总体介绍

    关键字:驰骋工作流引擎,开源工作流,CCFLOW,CCBPM,流程引擎,流程解析服务器,表单引擎,表单解析服务器,.NET工作流,源代码 产品名称: 驰骋.net工作流程引擎. 英文名称: chich ...

最新文章

  1. Python之禅--给编程者的掏心窝子的话
  2. blob jdbc mysql,JDBC能否处理Blob和Clob?
  3. navigationController的NavigationBar和ToolBar的POP或PUSH消失问题
  4. html盒子标准模型,CSS——(二)盒子模型与标准流
  5. linux基础教程 05,Linux应用基础教程-CH05磁盘分区和LVM
  6. 赫夫曼树的定义及原理
  7. Sql Server 存储过程分页大全(2005,2000)
  8. mapreduce 的partitioner,GroupComparator,KeyComparator,分布式缓存使用示例
  9. 淘宝天猫京东商品详情一键铺货到拼多多平台店铺接口代码对接教程
  10. 网站开发进阶(六十六)CSS3 - 新单位vmin/vmax与旧单位ex/ch使用详解
  11. 达梦数据库如何把EXCEL的数据导入到表中?
  12. 阅读的 10 大好处:为什么你应该每天阅读
  13. 雷神加速器无限更新失败️️️
  14. 《Delphi传奇》网络游戏组件安装步骤:Delphi 10.3安装DelphiX
  15. Unity 编辑器开发实战【Custom Editor】- FSM Editor
  16. php开启redis白屏,win10开机出现无限werfault错误怎么办?
  17. 牛客OR36 .链表的回文结构
  18. ROS示例----导航功能包Husky_exploration
  19. LBS-----基站轨迹定位算法
  20. 秒 毫秒 微秒 纳秒 Hz KHz MHz GHz

热门文章

  1. 漫画 | 辞职前与老板的最后一次谈话有哪些禁忌?
  2. Java平均工资再次上涨!这份宝藏资料限量免费送!
  3. 我与编程:十载寒冰,难凉热血
  4. 漫画:程序员太难了!为什么 Java 中的 main 方法必须是它?
  5. 烦人的Null,你可以走开点了
  6. 别学前端了!前端程序员:凭啥??网友:来钱太快你会飘!
  7. 利用策略模式结合alibaba/alpha框架优化你的图片上传功能
  8. 软件工程实践第二次作业——个人项目实战(数独)
  9. 关于手风琴效果延迟执行解决方式
  10. CentOS基础命令大全