您的位置:首页 > 其它

【入门篇】Activiti流程实例启动

2017-10-26 10:22 337 查看

需求

对于部署好的流程,启动该流程,开始走业务流程,保证流程顺利完成的第一步就是开个好头

涉及到的activiti表

1.act_ru_execution插入一条数据,表明当前流程实例的当前状态(该哪一级执行了)

2.act_ru_task:插入一条当前执行任务实例

3.act_ru_identitylink:任务参与者数据表。主要存储当前节点参与者的信息。插入参与者信息

方案

根据流程定义标识key来,以来runtimeservice服务来启动该流程实例

代码

//启动流程实例,自动对第一个结点进行任务分配
@Test
public void startProcessInstance() {
//得到runtimeService
RuntimeService runtimeService = processEngine.getRuntimeService();
//根据流程定义的key(标识)来启动一个实例,activiti找该key下版本最高的流程定义
//一般情况下为了方便开发使用该方法启动一个流程实例
String processDefinitionKey = "purchasingflow";
ProcessInstance processInstance = runtimeService
.startProcessInstanceByKey(processDefinitionKey);

//根据流程定义的id来启动一个实例,这种方法一般不用
//runtimeService.startProcessInstanceById(processDefinitionId);

System.out.println("流程梳理所属流程定义id:"
+ processInstance.getProcessDefinitionId());
System.out.println("流程实例的id:" + processInstance.getProcessInstanceId());
System.out.println("流程实例的执行id:" + processInstance.getId());
System.out.println("流程当前的活动(结点)id:" + processInstance.getActivityId());
System.out.println("业务标识:" + processInstance.getBusinessKey());
//System.out.println("流程变量:" + processInstance.getProcessVariables());
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: