activiti学习总结5

1. 多实例
   多实例执行分为两种方式,顺序执行与并发执行。 顺序执行,比如循环3次,先产生一个,完成,再产生一个,再完成,直到第3个实例产生
   并发执行,一次产生多个实例,执行任务时一次产生3个实例

多实例在执行时流程引擎自动产生如下变量
   nrOfInstances 一共要产生的实例数目
   nrOfActiveInstances 正在执行的实例个数,即还没有执行完的实例个数
   nrOfCompleteInstances 以执行完成的实例个数
   loopConter  正在执行的实例个数下标

可在流程中配置的属性有isSequential--是否顺序执行 loopCardinality循环的次数

2. 定时器定义方式,格式采用ISO-8061,cron

    1:timerDate:在某一个时间点发生,“2011-03-11T12:13:14”在此时间发生,不能使用    cron
    2:timeCycle:在一定间隔时间循环发生,"R3/PT10H"每隔10小时循环,循环3次
    3:timeDuration:等待多长时间发生1次,"P10D"10天之后发生,"PT10H"10小时之后发生

3. 定时器边界事件,是指到一定时间会执行某一个任务
    <boundaryEvent id="boundarytimer1" name="" cancelActivity="false" attachedToRef="usertask1">
      <timerEventDefinition>
        <timeDuration>PT20S</timeDuration>
      </timerEventDefinition>
    </boundaryEvent>
    cancelActivity:是否取消当前任务,true取消
    attachedToRef:当前任务Id

4. 子流程subProcess,可以实现异常边界事件,可以把一些流程封装在子流程中去,在子流程边界上设置异常边界事件.边界事件的errorcode需要与异常结束事件的errorCode一
样,且ErrorCode不能为数字

5. 异常边界事件
    <boundaryEvent id="boundaryerror1" name="" cancelActivity="true" attachedToRef="subprocess1">
      <errorEventDefinition errorRef="cancelStock"></errorEventDefinition>
    </boundaryEvent>
    errorRef="cancelStock"需要和子流程中异常结束事件的errorRef一致

6. 调用过程(子过程) 这个跟子流程有区别,子流程是指一个流程定义中的部门流程过程,
而调用过程是可以直接调用另外一个流程定义,调用过程一般用于把一些通用的流程进行定义,其他流程可以统一调用这些已定义好的通用流程
7. 定时器中间捕获事件,流程执行到事件时,等待,按照设置好的时间调度模式进行执行。

猜你喜欢

转载自jacky1982728.iteye.com/blog/2398218
今日推荐