Fixflow,做中国最好的开源流程引擎!项目地址https://github.com/fixteam/fixflow

FixFlow多实例(会签)功能介绍

多实例:顾名思义,就是在此节点会产生多个任务实例,所有的activity类型节点都可以有多实例选项配置,比如UserTask、scriptTask等。

会签场景举例

 以请假流程为例,请假流程发起后,需要由A,B,C三个领导会签审批,如果2个以上领导同意,则请假通过,否则退回申请人节点。(这种请假流程比较YD,呵呵)。

首先,创建新的流程实例,按照非会签的配置配置好请假流程,保证一个人能正常审批。这点做不到,就去找下fixflow用户向导的10分钟入门章节吧。

原理介绍:

多实例配置界面一共6个参数:

  1. 完成策略:是指引擎在什么时候验证完成表达式,默认选择所有,说明每次按钮的提交操作都会触发完成表达式的验证。
  2. 输入数据集和输入项编号:这个用伪代码比较好解释
    for(Object obj:${输入数据集}){${输出项}=obj;createTask();//创建TaskInstance;
    }

    说明:当令牌到达此节点,判断当前节点为并行多实例之后,引擎会循环输入数据集,将循环项赋值给${输出项编号},然后创建流程实例。

  3. 输出数据集,输出项编号:每次做完按钮操作后,会将输出项编号Add到输出数据集中。
  4. 完成表达式:顾名思义,判断此次会签是否结束的条件。

配置过程:

  1. 首先创建4个变量,如图:对应上述输入数据集(处理人集合)-持久化-默认值(new ArrayList()),输出数据集(处理结果集合)-持久化-默认值(new ArrayList()),输入项(单个处理人),输出项(单个处理结果)
  2. 在提交节点的“启动并提交”按钮的执行表达式中写如下代码:
    ${处理人集合}="1200119391,1200119392,1200119393";

    说明:设置这三个人会签

  3. 审批节点:同意按钮执行表达式:
    ${单个处理结果}="同意"

    不同意按钮执行表达式:

    ${单个处理结果}="不同意"
  4. 任务分配,选择${单个处理人}
  5. 多实例配置:变量一一对应,完成表达式:
    if(${处理结果集合}.size() == ${处理人集合}.split(",").length){return true;
    }
    return false;

    说明:当所有人都处理过,则代表此次会签结束。

  6. 这时候并不知道会签结果是同意还是不同意,所以在排他网关的后面线条中:
    y=Collections.frequency(${处理结果集合}, "同意");
    if(y>=2){return true;
    }
    return false;

    说明:如果两个以上点的同意,则结束。另外一条线:

    y=Collections.frequency(${处理结果集合}, "同意");
    if(y<2){return true;
    }
    return false;

    说明:当两个以下点的同意,则退回到开始节点。最终效果如图:

现在,多实例的配置已经完成了,如果是fixflow官方的web示例项目,可以直接发布到项目中,用不同账号登陆就可以看到效果了,当然,设置的三个处理人,在au_userinfo表中是必须存在的。

附注:文档中的流程定义文件在附件中,在官方示例WEB中可以直接发布运行。

总结:其实原理很简单,就是循环做同一个节点,当满足一定条件时跳出节点,在循环过程中,记录中间变量,离开节点的时候通过变量来判断处理后的结果。

明白这些以后,可以根据原理任意扩展,像多部门会签、像当2个人同意后,其他人不再处理、像循环执行某一项任务等等很多此类需求,熟话说:熟能生巧,先配置成功以后,慢慢研究原理,其实可以做出很多意想不到的功能的。

FixFlow多实例会签功能使用介绍相关推荐

  1. Flowable多实例会签功能来袭

    文章的最下面有学习视频与源代码 拒绝重复造轮子了,有这个流程平台就够了 会签.或签 会签 ABC三人都审批通过才能进入下一节点 (三人都可以看到任务) 或签 其中一人通过 即可进入下一节点 (三人都可 ...

  2. linux中bash的功能主要有,Linux系统中的Bash功能的介绍

    今天小编要跟大家分享的文章是关于Linux系统中的Bash功能的介绍.一个完整计算机的体系结构包括:硬件与软件,而软件又分为系统软件与应用软件,负责对硬件仅需管理与操作的是系统软件的内核部分,用户是无 ...

  3. Activiti实现会签功能程序Demo

    Activiti会签功能 1.会签是什么? 会签功能指多个人员针对同一个事务进行协商处理,共同签署决定一件事情. 在工作流中会签,是指多个人员在同一个环节进行处理,同一环节的有多个处理人并行处理,按照 ...

  4. iOS开源项目MobileProject功能点介绍

    一:MobileProject简介 MobileProject项目是一个以MVC模式搭建的开源功能集合,基于Objective-C上面进行编写,意在解决新项目对于常见功能模块的重复开发,MobileP ...

  5. 高性能ORM框架XLinq功能详细介绍

    之前简单介绍了XLinq的一些功能,有很多功能都没有提到,现在给XLinq加了一些功能,这次把所有功能都介绍一遍. 设计目标 易用性 在使用一个框架的时候 应该没几个人会喜欢写一大堆的配置文件吧 也应 ...

  6. N点虚拟主机管理系统(For Windows2003/2008)功能及介绍

    N点虚拟主机管理系统是针对销售 主机.邮局.数据库等产品时效率低.管理难等问题而自主研发的集产品自动化开通.管理.续费.升级等功能为一体的软件系统.通过一年多的改进与运作,软件已具有功能强大.安全稳定 ...

  7. 06 ansible剧本功能实践介绍

    以下例子的配置文件 [rsync:children] rsync_server rsync_client[rsync_server] 192.168.1.5[rsync_client] 192.168 ...

  8. JAVA中几种循环结构的表示_本文通过实例讲解给大家介绍Java中for、while、do while三种循环语句的区别,具体详情如下所示:第一种:for循环 循环结构for语句的格式...

    本文通过实例讲解给大家介绍Java中for.while.do while三种循环语句的区别,具体详情如下所示: 第一种:for循环 循环结构for语句的格式: for(初始化表达式;条件表达式;循环后 ...

  9. Excel的裁剪(trimming)(トリミング)功能使用介绍

    Excel的裁剪(trimming)(トリミング)功能使用介绍 ■前言 当一个画面很长时,我们在做文档时,我们如果把画面全部截取出来, 会占用很多篇幅,同时还不能突出重点. 那么,如何能解决这个问题呢 ...

最新文章

  1. ZABBIX(八) Zabbix 通知媒介
  2. Kafka事务特性详解
  3. hibernate-jpa/hibernate-jpa-2.1-api-1.0.0.final.jar源代码下载地址
  4. 爸爸我爱您(之十二)
  5. [ASP.NET 控件实作 Day14] 继承 CompositeControl 实作 Toolbar 控件
  6. windows之如何刷新电脑DNS缓存
  7. [bbk4343]小布-OCP 042全真试题讲解
  8. git管理账户忘记了_强制找回GitLab管理员账户密码的方法
  9. asp.net的处理机制(.ashx/.aspx)
  10. sparkR介绍及安装
  11. 乌邦图怎么装php,Ubuntu如何安装php7?
  12. python怎么设置加密,Python 加密的实例详解
  13. 02 . 在 Linux 上安装Oracle11g 数据库
  14. 远程 mysql error 2003_远程连接MySQL报错ERROR 2003解决办法
  15. android 技能 英文,讯飞输入法Android7.0.4050搭载音标输入神技能
  16. css权重机制,CSS权重及其计算
  17. ios手动重签名在非越狱手机上安装自己破解的app
  18. 验证码接码短信平台 - 小程序版
  19. 文献检索——Web of Science|CSDN创作打卡
  20. itextpdf5.x实现合同签署盖章预览功能

热门文章

  1. POJ 1830 开关问题 高斯消元
  2. 原创:用python把链接指向的网页直接生成图片的http服务及网站(含源码及思想)...
  3. 北师大 外国教育史-6(新教育运动)
  4. 单片机驱动蜂鸣器(有源和无源)
  5. oracle导出数据一闪就没,Pl/Sql 导入dmp文件时窗口一闪而过
  6. 谷歌浏览器无法打开localhost:3000,打开localhost就跳转测试地址问题
  7. 图片批量压缩处理工具
  8. 书法拓片matlab,拓墨书法作品(拓片)的具体操作方法和步骤?
  9. 南理工计算机考研难度,南京理工大学网络空间安全考研难吗
  10. 哲学笔记:之:天道性命