1000字范文,内容丰富有趣,学习的好帮手!
1000字范文 > 《Activiti/Flowable 深入BPM工作流》- BPM任务如何关联businessKey?

《Activiti/Flowable 深入BPM工作流》- BPM任务如何关联businessKey?

时间:2021-08-24 23:49:20

相关推荐

《Activiti/Flowable  深入BPM工作流》- BPM任务如何关联businessKey?

《Activiti/Flowable 深入BPM工作流》- BPM任务如何关联businessKey?

一. 问题

1. BPM任务如何关联businessKey?

2. 为什么要关联businesskey

二. 详情

2.1 任务为什么要进行关联businessKey?

解答: 在activiti实际应用时, 查询代办任务可能要显示出业务系统的一些相关信息, 例如: 查询待审批请假单任务列表, 需要将请假单的日期,请假天数等信息显示出来,请假天数等信息在业务系统中存在, 而并没有在activiti 数据库中存在, 所以无法通过activiti查询到请假天数等信息.

2.2 那怎么实现呢?

解答: 在查询代办任务是,通过businessKey(业务标识)关联业务系统的请假单表,查询出请假天数等信息.

/*** 关联businessKey如何实现?*/public void connectBusinessKey() {// 1.获取 ProcessEngine 引擎.ProcessEngineConfiguration configuration = ProcessEngineConfiguration.createProcessEngineConfigurationFromResource("activiti.cfg.xml");ProcessEngine processEngine = configuration.buildProcessEngine();// 2.创建 RuntimeService, TaskService对象RuntimeService runtimeService = processEngine.getRuntimeService();TaskService taskService = processEngine.getTaskService();// 3.通过 TaskService查询到个人任务Task task = taskService.createTaskQuery().processDefinitionKey("studentHoliday").taskAssignee("Daniel").singleResult();// 4.通过 task对象,得到任务idString processInstanceId = task.getProcessInstanceId();// 5.通过流程实例id,得到流程实例对象.ProcessInstance processInstance = runtimeService.createProcessInstanceQuery().processInstanceId(processInstanceId).singleResult();// 6. 对象 processInstance对象, 得到 businessKeyString businessKey = processInstance.getBusinessKey();// 7.根据 businessKey 就可以得到请假单的信息.System.out.println("businessKey: " + businessKey);}

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。