Activiti - 设置会签】的更多相关文章

前些天在群里聊工作流和Activiti,群里有人分享了自己的工作流引擎开源项目,大伙纷纷问这问那(比如为什么突然自己搞个process engine.有没有eclipse plugin.能不能绘制流程图等等). 现实生活中的工作流程,我们也经常碰到需要会签的情况,支持会签是很必要的. 正好有两个人问道:支持会签吗? 也有人也问道:什么是会签? 如果从process engine的角度上讲呢? 可以说一个task节点下有多个task instance. 而不是一个从task节点执行到多个task节…
http://man1900.iteye.com/blog/1607753 在流程业务管理中,任务是通常都是由一个人去处理的,而多个人同时处理一个任务,这种任务我们称之为会签任务.这种业务需求也很常见,如一个请款单,领导审批环节中,就需要多个部门领导签字.在流程业务中,我们可以把每个领导签字的环节都定义为任务,但若这样,这个流程业务有一点是固定的,就是签批人是固定的.而任务是由一个领导签完再到另一领导,当然也可以由多个领导同时签字. 传统的用流程业务来解决可以采用以下的做法: 串行会签 并行会签…
现象:activiti设置customSessionFactories不起作用,流程还是走原来的查询方法原因:新实现的XXXEntityManagerFactory的getSessionType方法返回错误,导致ProcessEngineConfiguration初始化的时候没有覆盖activiti自带的XXXEntityManager,getSessionType应该返回对应interface的类型,如UserEntityManagerFactory应该返回UserIdentityManage…
一个任务需要多个角色进行审批或者表决,根据这些审批结果来决定流程的走向.实现以上任务,activiti已经提供了支持,可以使用BPMN规范的多实例活动来实现. 1.Activiti多实例: 多实例节点是在业务流程中定义重复环节的一个方法. 从开发角度讲,多实例和循环是一样的: 它可以根据给定的集合,为每个元素执行一个环节甚至一个完整的子流程, 既可以顺序依次执行也可以并发同步执行. 多实例是在一个普通的节点上添加了额外的属性定义 (所以叫做'多实例特性'),这样运行时节点就会执行多次. 下面的节…
1.设置activiti 流程引擎的用户,组别,关系/**在部署流程定义和启动流程实例的中间,设置组任务的办理人,向Activiti表中存放组和用户的信息*/ IdentityService identityService = processEngine.getIdentityService();//认证:保存组和用户信息 identityService.saveGroup(new GroupEntity("部门经理"));//建立组 identityService.saveGroup…
public static void mian(String args[]){ ProcessEngine processEngine  = ProcessEngine.getDefaultProcessEngine(); RuntimeService runtimeService = processEngine.getRuntimeService(); runtimeServie.setVariable(executionId,variablename,value);  // 设置一个流程变量…
1.什么是会签? 在流程业务管理中,任务是通常都是由一个人去处理的,而多个人同时处理一个任务,这种任务我们称之为会签任务.这种业务需求很常见,如一个请款单,领导审批环节中,就需要多个部门领导签字.在流程业务中,我们可以把每个领导签字的环节都定义为任务,并且这个会签的人员是不固定的,若固定的我们可以通过Activiti的并行任务或串行任务来处理.会签的引入说明,无非就是为了流程流转至某一环节点,其审批的人员是动态的,并且需要根据会签审批的结果实现流程的不同流转. 2.中国特色的会签需求是什么? 会…
在实际的业务中,可能存在存在这么一种情况,当流程运行到某一个环节时,可能需要同时多个人的参与,才可以完成此环节.此时就可以用到activiti的多实例来解决此问题. 一.将一个节点设置成多实例的方法: 要把一个节点设置为多实例,节点xml元素必须设置一个multiInstanceLoopCharacteristics子元素.     当isSequential=true时,表示的顺序执行,即虽然该节点有多条任务,但只有上一条执行完,才可以执行下一条. 当isSequential=false时,表…
注意:以下规则是我为了规范流程的处理过程,不是Activiti公司的官方规定. 1.流程启动需要设置启动者,在Demo程序中,“启动者变量”名统一设置为initUserId 启动时要做的: identityService.setAuthenticatedUserId(initUserId); processInstance = runtimeService.startProcessInstanceByKey(流程ID, 业务Key, 变量map); or startProcessInstance…
注意:以下规则是我为了规范流程的处理过程,不是Activiti公司的官方规定. 1.流程启动需要设置启动者,在Demo程序中,“启动者变量”名统一设置为initUserId 启动时要做的: identityService.setAuthenticatedUserId(initUserId); processInstance = runtimeService.startProcessInstanceByKey(流程ID, 业务Key, 变量map); or startProcessInstance…