F2工作流引擎参与者类型成员的交、并、互拆计算规则
计算描述:计算规则指的是和其它“参与者类型成员”的之间的计算,必须求解处理人不为空的情况下才进行规则计算,各个“参与者类型成员”按序号顺序执行。
计算算法:并集(权重最低),交集(权重中),互拆(权重最高,且是独占式)
规则要点:
- 按序号顺序执行计算结果
- 参与者处理人不为空才参与成员间计算
- 权重
示例讲解

以上图图示为例,总共有三个参与者类型成员:SQL参与者,指定用户参与者,角色参与者。
那么我们用示例来解释一下规则里面的描述要点:
- 1. 按序号顺序执行计算结果
参与者前面都有一个序号:1是SQL参与者。2是指定用户参与者。3是角色参与者。那么引擎的执行会把这个顺序来执行求解各自的处理人。
通过右侧的上下剑头可以调整顺序。
示例假如:
1SQL参与者求解得出ABC
2指定用户参与者是BD
3角色参与者是EFG
条件假设
假设条件情况一:1是并集,2交集,3并集
那么执行过程是这样的:
引擎执行1结果一定是ABC,因为1是第一个参与者,然后把ABC存入一个临时的结果集中我们称之为temp,因为1是并集,那么继续执行(注意只要不是互拆类型的都继续执行),2是BD,那么BD相交于tem,执行BD∩temp=B,将B放入temp=B,那么继续执行3EFG,用EFG并集于temp,执行EFG∪temp=BEFG放入临时结果集temp=BEFG,由于后面没有了,所以最终结果就是:BEFG。
假设条件情况二:1是并集,2互拆,3交集
那么执行过程是这样的:
引擎执行1结果 temp=ABC,因为1是并集那么继续执行(注意只要不是互拆类型的都继续执行),2是BD,那么BD互拆于temp,此时得到的新结果就是BD,由于2是互拆权重最高了所以后面的3不再执行去计算了,最终BD放入temp=BD,所以最终结果就是:BD
设置条件2求得得出的人是空的执行情况又会是怎样的?
1SQL参与者求解得出ABC
2指定用户参与者是 空
3角色参与者是EFG
按上面的情况二,执行的结果就是1 temp=ABC,先执行2由于为空(虽然权重是互拆但是自身没有处理人所以不参与计算),所以2不参与计算,继续执行3EFG相交于temp,得出的结果就是空 temp=空
- 2. 参与者类型求解到的处理人不为空才参与计算
这里是指参与者类型自已求出来的处理人不能为空才参与。
比如:1的SQL参与者,如果求解出来的处理人是空的,那么这SQL参与者不参与成员之间的交集,并集,互拆的计算。
- 3. 权重
并集(权重最低)与temp进行合并
交集(权重中)与temp取相同共有的处理人
互拆(权重最高,且是独占式)代替掉temp成为新的结果,并且后面所有参与者都忽略掉。
F2工作流引擎参与者类型成员的交、并、互拆计算规则的更多相关文章
- F2工作流引擎这工作流引擎体系架构(二)
F2工作流体系架构概览图 为了能更好的了解F2工作流引擎的架构体系,花了些时间画了整个架构的体系图.F2工作流引擎遵循参考WFCM规范,目标是实现轻量级的工作流引擎,支持多种数据库及快速应用到任何基于 ...
- F2工作流引擎之-纯JS Web在线可拖拽的流程设计器(八)
Web纯JS流程设计器无需编程,完全是通过鼠标拖.拉.拽的方式来完成,支持串行.并行.分支.异或分支.M取N路分支.会签.聚合.多重聚合.退回.传阅.转交,都可以非常方便快捷地实现,管理员 ...
- F2工作流引擎Web层全新扁平化UI上线
特点:引入Bootstrap开源UI样式和fontawesome图标集 扁平化样式使用界面更舒服,按钮主题可快速定义更换,对于集成到业主系统UI图标更加丰富. 以下截取部分图片展示,更多请联系作者登录 ...
- F2工作流引擎之 概述(一)
简介 工作流应该算是基础框架软件,主要用于流程的重组和优化,它有广阔的应用领域.在java下有很多优秀的开源工作流可以选择比如activit5.jpbm4等,在.net下却几乎找不到令人满意的工作流引 ...
- F2工作流引擎之 工作流运转模型(三)
1流程单起点单终止模型 单起点:一个流程定义必须有且唯一起点 单结束点:一个流程定义必须有且唯一结束点. 约定:提单与结束是每个流程必须有的活动,且唯一只有一个提单和结束. 2串行模型 描述:串行(S ...
- F2工作流引擎模型
工作流引擎(Workflow Engine ) [编辑] 工作流引擎概述 工作流引擎是指workflow(工作流)作为应用系统的一部分,并为之提供对各应用系统有决定作用的根据角色.分工和条件的不同决定 ...
- F2工作流引擎之组织用户模型(四)
1 概述 工作流组织模型是工作流引擎中核心重要的一部份,是实现人机交互中不可或缺的组成部分,而由于工作流引擎需要适应不同的系统之间存在组织用户结构的不同, 如组织表中字段名不同,所以需要实现适应不同系 ...
- F2.Net工作流引擎系列索引
索引如下 F2工作流引擎遵循参考WFCM标准规范,符合中国国情特色,更轻量级的工作流引擎,支持多种数据库(mmsqlserver,mysql,oracle),有强大智能的组织模型接口可快速应用到任何基 ...
- 工作流引擎在vivo营销自动化中的应用实践 | 引擎篇03
作者:vivo 互联网服务器团队- Cheng Wangrong 本文是<vivo营销自动化技术解密>的第4篇文章,分析了在营销自动化业务引入工作流技术的背景和工作流引擎的介绍,同时介绍了 ...
随机推荐
- java开发中中文乱码总结
1.jsp页面内容显示乱码 这种乱码原因很简单,一般的工具或解码程序对中文字符解析时采用默认的解码方式: <%@ page contentType="text/html; charse ...
- sql的各种join连接
SELECT * FROM TableA INNER JOIN TableB ON TableA.name = TableB.name id name id name -- ---- -- ---- ...
- SVN服务器搭建和使用(三)
SVN服务器搭建和使用(三) 接下来,试试用TortoiseSVN修改文件,添加文件,删除文件,以及如何解决冲突等. 添加文件 在检出的工作副本中添加一个Readme.txt文本文件,这时候这个文本文 ...
- flume的使用
1.flume的安装和配置 1.1 配置java_home,修改/opt/cdh/flume-1.5.0-cdh5.3.6/conf/flume-env.sh文件
- hive的使用02
1.hive的交互方式 1.1 bin/hive 进入hive交互命令行环境 1.2 bin/hive -e 'select * from hive.student;' (可以通过 > 将结果写 ...
- C#中浮点数依IEEE-754标准转二进制串 (MODBUS 浮点数转换)
因工作需要,把再串口通信中浮点数与字节流的数据转换函数放在这,转发的,谢谢原作者. 今天花了一天的时间搜罗资料,为了解决一个串口编程的进制转化问题.因为串口传送的浮点数据格式与IEEE-754标准(3 ...
- 【转】CSS:table-cell详解
table-cell这个家伙在国外的网站中偶有露头,天朝由于IE6.7这两个货泛滥成灾,难有发挥,那么,这个家伙到底能干些什么呢?先让我们来研究下table,那些年曾经使用的table布局为何如此辉煌 ...
- html局部打印
html页面局部打印的小栗子 只要修改点击打印的按钮和打印的div区域的id就行啦 <!DOCTYPE html> <html> <head> <title& ...
- miniprofiler的对数据库的监测使用。以nancy,petapoco为例
miniprofiler的使用 miniprofiler的详细介绍请看这里http://miniprofiler.com/.(可以对数据库和页面等监控如 ado ef mvc mongodb) 本文以 ...
- oracle的imp导入时覆盖目标数据库
背景:oracle正式库通过exp命令导出的dmp备份包,现在通过imp命令还原到测试库,测试库上面的表数据全部不要,要用新的. 方法:先删除用户.用户所在表空间,再新建用户和表空间,再imp导入. ...