我是用了 flowable 的 PROCESS_STARTED 事件监听,但是拿不到随流程启动设置的全局变量怎么办呢? 启动一个流程的时候走到监听器,但是 act_hi_varinst 和 act_ru_variable 都没有数据。 请问有大佬知道怎么处理吗
List<HistoricVariableInstance> paramList = historySerice.createHistoricVariableInstanceQuery().processInstanceId(processInstanceId).list(); Map<String,Object> params = new HashMap<>(); if (!CollectionUtils.isEmpty(paramList)){ for (HistoricVariableInstance variable : paramList){ params.put(variable.getVariableName(),variable.getValue()); } } return params;
1 dengji85 2023-03-01 22:56:11 +08:00 我用过 activiti ,流程还没结束,应该用运行时服务查询流程变量吧? |
![]() | 2 AmaQuinton 2023-03-02 09:58:19 +08:00 activiti 中, 在全局监听器里面使用 runtimeService.getVariables 获取变量, 数据存储在 activiti.ACT_RU_VARIABLE 表里, 根据 processInstanceId 或者 executionId 可以查到, flowable 和 activiti 类似, 你可以参考一下 |