flowable设置流程发起人
先来看一段API调用:
List hpis = historyService.createHistoricProcessInstanceQuery().startedBy(userCode).list();
查询结果为空,这是为什么?
1.原因说明
当通过runtimeService接口启动(startProcessInstance[Byxxx])流程的时候会设置一个变量,代码片段(ExecutionEntityManagerImpl.java#createProcessInstanceExecution):
String authenticatedUserId = Authentication.getAuthenticatedUserId();processInstanceExecution.setStartActivityId(startActivityId);processInstanceExecution.setStartTime(CommandContextUtil.getProcessEngineConfiguration().getClock().getCurrentTime());processInstanceExecution.setStartUserId(authenticatedUserId);// Store in databaseinsert(processInstanceExecution, false);if (initiatorVariableName != null) {processInstanceExecution.setVariable(initiatorVariableName, authenticatedUserId);}
从上面的代码片段中可以看出在启动流程的时候引擎会先从Authentication读取已认证用户信息authenticatedUserId ,并将此id
设为当前流程实例的startUserId,并作为流程变量和initiatorVariableName(在流程图里自定义)绑定;现在我们只要能设置认证
用户的ID就可以了。
2.解决问题
查看API发现Authentication有一个方法:setAuthenticatedUserId()。
解决办法很简单只要在启动流程之前调用API即可:Authentication.setAuthenticatedUserId(userId);
当流程启动之后可以到表ACT_HI_PROCINST中查看字段START_USER_ID_的值来验证是否生效。
3.结束
问题很简单,但是官网的手册没有提到,希望让遇到问题的人少走弯路。
flowable设置流程发起人相关推荐
- flowable 获取流程发起人
1. 设置流程发起人 //设置流程发起人 Authentication.setAuthenticatedUserId(userId); ProcessInstance processInstance ...
- flowable 使用流程发起人分配
版本 flowable 6.7.2 场景 希望用户任务直接分配给流程发起人 用法 在流程开始事件上绑定发起人变量 <startEvent flowable:initiator="INI ...
- Activiti设置流程发起人用户信息
在启动一个流程时,我们会有将当前用户启动的流程保存起来,作为流程发起人(启动人.申请人.提交人),而在保存这个流程启动者信息,api 没有明确规范该怎么存. 先看一段API调用 List hpis = ...
- flowable 查询流程发起人
SELECT DISTINCTRES.START_USER_ID_ AS startUserId FROMACT_HI_PROCINST RESLEFT OUTER JOIN ACT_RE_PROCD ...
- flowable 设置流程跟踪高亮线的颜色
背景:在实际情况下,很多人对这个红色的高亮有意见,所以这里我把我的修改颜色的代码分享出来,希望对大家有帮助.(如果有问题可以加QQ群:633168411 里面很多高手,人也都非常善良) 效果如下: 1 ...
- Activiti设置流程发起用户信息【包括获取发起人信息代码】
原文地址:https://blog.csdn.net/HuanFengZhiQiu/article/details/81130288 一.设置用户发起人 identityService.setAuth ...
- activiti 流程发起人控制
最近做activiti流程发起人的控制,最开始的想法是新建一张表 ,通过控制流程定义id与发起人id进行控制,如果这样每次发布新的流程就必须 重新设置流程发起人,因为通过流程定义不能获取流程模型id, ...
- flowable工作流 流程变量_业务流程 BPM、工作流引擎、Flowable、Activiti
特点 基于 Flowable(Activiti)生来具有的稳定工作流引擎 支持在线流程设计器,流程导入导出,符合 BPMN 规范,中国式工作流 支持流程办理.退回.自由流.会签.并行.串行.服务任务等 ...
- flowable工作流 流程变量_Activiti工作流的应用示例
1:工作流的概念 工作流(Workflow),就是"业务过程的部分或整体在计算机应用环境下的自动化",它主要解决的是"使在多个参与者之间按照某种预定义的规则传递文档.信息 ...
最新文章
- 单片机有什么好的网课?
- Laravel自定义分页样式
- 【数学建模】基于随机机会约束规划方法对旅行商问题TSP求解
- PETS公共英语三级大纲词汇4107个-D
- Linux下Redis服务器安装配置
- oracle二阶段事物,分布式事务 两阶段提交 (2PC)
- php 随机指定位数,php生成一个可选位数的随机码
- Mockito –使用全局配置的SmartNull在NPE上提供更好的错误消息
- Unity(一)Unity脚本程序开发
- mysql 5.6.23 源码包安装报错_Ubuntu 14.10下编译安装MySQL 5.6.23
- mysql优化要点_你需要掌握的 Mysql 优化的一些要点
- php 判断用户是否刷新,ajax php 实现无刷新用户检查是否存在
- 功能机也不放过,谷歌或为 Chrome 提供非触控模式
- envi 打开影像报错:‘HISTOGRAM:illegal binsize or max/min‘.The result maybe invalid
- sbuf.st_size 为负数
- hive--解决使用not in之后返回数据为空的问题
- android开发培训大纲,华图教育-Android应用开发培训教学大纲
- 京东商品发布实现店铺商品批量上新,节省大量人力
- 针对《评人工智能如何走向新阶段》一文,继续发布国内外的跟贴留言503-531条如下:
- 谁是K歌之王? 爱唱/唱吧全面对比
热门文章
- 老男孩教育每日一题-第108天-php-fpm优化关闭危险参数有哪些?
- ES6入门概览二--数组
- shell中if 变量里包含字符串的判断
- The maximum string content length quota (8192) has been exceeded while reading XML data
- 重定向dup2的本质
- C++使用ICE实现两台主机通信实例
- How to install python packages
- 打印dog信息java_java – 打印arraylist元素?
- 65.shell特殊符号与和cut,sort,wc,uniq,tee,tr,split命令
- 02-Unity深入浅出(二)