大家好,感谢邀请,今天来为大家分享一下流程审核网站源码分享的问题,以及和流程审核软件的一些困惑,大家要是还不太明白的话,也没有关系,因为接下来将为大家分享,希望可以帮助到大家,解决大家的问题,下面就开始吧!
产品说明
工作流低代码非常适合学习、项目研发、私活项目开发等工作场景,实现大部分场景可以无需编码,通过拖拽表单+流程设计实现流程审批功能,大大减少了研发的工作量。
本次升级文档及源码地址:
https://www.yuque.com/qingfengaibiancheng/chq3gg/thnfxb
一、什么是多实例(会签)
在流程业务管理中,任务通常是由一个人去处理的,而多个人同时处理一个任务,称之为会签任务。
Activiti实现会签是基于多实例任务,将节点设置成多实例,主要通过在UserTask节点的属性上配置。
如果想让某些特定的流程活动的行为执行多次,则可以将活动设置为多实例,让其按照配置来执行相应的次数。UserTask会创建活动的实例,流程是否通过UserTask,由用户决定,这不属于活动的行为。活动的多实例可以让一个流程活动(甚至是子流程〉按顺序或者同时执行,在执行的过程中,会为活动产生多个实例,因此称该流程活动为多实例的流程活动。大部分的流程活动均可以被设置为循环执行,这些活动包括大部分的流程任务、嵌入式子流程和调用式子流程。为流程活动的元素添
multilnstanceLoopCharacteristics子元素,将该流程活动配置为一个多实例的活动,如以下的配
置片断:
<userTaskid=”myTask&34;name=”Start”></startEvent>\n<userTaskid=”usertask2&34;endeventl&34;End&34;flowl&34;”sourceRef=”starteventl”\ntargetRefusertask2></sequeceFlow>\n<sequenceFlowid=”flow2”name=””sourceRef=”usertask2”\ntargetRef=”usertask3”></sequenceFlow>\n<sequenceFlow=”flow3name=”sourceRefusertask3\ntargetRef=”endeventl”></sequenceFlow>\n</process>
中定义了个多实例的用户任务,该用户任务的全部实例将会按顺序执行(isSequential=true),设置了循环次数为代2。
二、多实例(会签)参数说明
会签的种类
按数量通过:达到一定数量的通过表决后,会签通过。按比例通过:达到一定比例的通过表决后,会签通过。一票否决:只要有一个表决是否定的,会签否决。一票通过:只要有一个表决通过的,会签通过。
1、多实例包含的默认变量
nrOfInstances:创建的实例总数nrOfActiveInstances:当前活动的实例数,针对顺序类型的多实例,该变量值等于1nrOfCompletedInstances:已执行实例数loopCounter:表示多实例流程循环的下标
2、多实例类型
顺序(sequential):执行顺序,必选项。true:多实例顺序执行。false:多实例并行。
并行(parallel):多个实例会同时并行发放给处理人
loopcardinality:循环基数(实例数量),可选项。可填整数,表示会签的人数。
Collection:集合,可选项。会签人数的集合list,与loopcardinality二选一。
Elementvariable:元素变量。选择Collection时必选,为collection集合每次遍历的元素。
Completioncondition:完成条件,可选项。
3、多实例基数
定义多实例生成的实例数。当结合采集方式生成多实例时,该基数只能小于或等于采集集合的size,否则执行过程中将发生系统错误NoSuchElementException;当基数小于采集集合的size时,则按照集合中元素的顺序生成等于基数指定数量的实例。如果不配合使用采集方式,也可以直接指定基数,则系统会同时生成指定数量的相同实例。
4、多实例采集
用于指定一个List,自动生成等于Listsize数量的实例。可以将该List设置为处理人员列表,然后设置元素变量名,并将分配—固定值—处理人/代理人设置为元素变量名,则最后会为每一个集合中的人员生成一个已指派实例。
5、多实例元素变量
表示多实例采集中元素对应的变量,该变量保存着集合中元素的最新值,可以使用表达式获取。
6、多实例完成条件
是一个表达式,如果返回值为true则该多实例自动结束。例如${nrOfCompletedInstances/nrOfInstances>=0.6}只要所有流程实例完成了60%即该多实例任务结束。
${nrOfInstances==nrOfCompletedInstances}表示所有人员审批完成后会签结束。
${nrOfCompletedInstances==1}表示一个人完成审批,该会签就结束。
Activiti会签有个特性,比如设置一个人完成后会签结束,那么其他人的代办任务都会消失。
7、分配
在使用多实例的情况下,当将分配—固定值—处理人/代理人/候选人设置为多实例元素变量名时,则生成的实例会对应自动指派给列表中配置的处理人。
文章到此结束,如果本次分享的流程审核网站源码分享和流程审核软件的问题解决了您的问题,那么我们由衷的感到高兴!