起步软件技术论坛
搜索
 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 2684|回复: 6

[结贴] 关于修改流程执行者的问题请教

[复制链接]
发表于 2017-4-11 22:07:22 | 显示全部楼层 |阅读模式
1.我们修改流程执行者是在定时器里面写的:
代码如下:
                            String sProcess = ActionUtils.getRequestContext().getActionContext().getProcess().getFullName();
                            String sActivity = ActionUtils.getRequestContext().getActionContext().getActivity().getName();
                            String sPersonID = ContextHelper.getPerson().getID();
                            HashMap<String, Object> params2 = new HashMap<String, Object>();
                            params2.put("task", sID);
                            params2.put("fid", sFID);
                            params2.put("check", false);
                                com.justep.system.action.ActionUtils.invokeAction(sProcess, sActivity, "modifyExecutorAction", sPersonID, params2);

其中sID是任务ID,sFID是执行者的fID

2.通过调用系统的修改执行者方法,是可以把执行者修改掉的,但是修改掉以后,用新的执行者进去执行任务,报如下错误:
Caused by: com.justep.system.util.BizSystemException: 编码: JUSTEP180197; 提示: 任务"【文件起草申请:文件管理员审核】研发部门工作规范1.0(预)(申请文件编码:TE-STP-DS-0001)申请人: 杨璐萍"必须指定执行者

请问是不是还有其他需要修改的地方?

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
35906
发表于 2017-4-12 11:16:27 | 显示全部楼层
modifyExecutorAction这个action中没有check参数吧,如下本地测试没问题
  1.                 String sProcess = ActionUtils.getRequestContext().getActionContext().getProcess().getFullName();
  2.         String sActivity = ActionUtils.getRequestContext().getActionContext().getActivity().getName();
  3.         String sPersonID = ContextHelper.getPerson().getID();
  4.         HashMap<String, Object> params2 = new HashMap<String, Object>();
  5.         params2.put("task", task);
  6.         params2.put("fid", "/ORG01.ogn/9B38128D8B33435DBB6781B6E04AE7FE@ORG01.psm");
  7.                 com.justep.system.action.ActionUtils.invokeAction(sProcess, sActivity, "modifyExecutorAction", sPersonID, params2);
复制代码
远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



如按照该方法解决,请及时跟帖,便于版主结贴
回复 支持 反对

使用道具 举报

 楼主| 发表于 2017-4-12 13:41:10 | 显示全部楼层
jishuang 发表于 2017-4-12 11:16
modifyExecutorAction这个action中没有check参数吧,如下本地测试没问题

流程的执行规则那边 打开后自动流转勾选上后,会发现任务表的sExecuteMode2的值advanceWhenOpen,如果有这个值会导致审核人点击代办会报该错误;如果把该字段的值清空,再点击就可以正常打开。请问这个是为什么啊
回复 支持 反对

使用道具 举报

 楼主| 发表于 2017-4-12 13:53:46 | 显示全部楼层
jishuang 发表于 2017-4-12 11:16
modifyExecutorAction这个action中没有check参数吧,如下本地测试没问题

还有这个fid参数的值是代表当前修改人员还是被修改人员
回复 支持 反对

使用道具 举报

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
35906
发表于 2017-4-12 14:44:34 | 显示全部楼层
流程的执行规则那边 打开后自动流转勾选上后在流程监控中操作这个任务有这个问题吗?
fid传的是你要把执行者修改为谁的值
远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



如按照该方法解决,请及时跟帖,便于版主结贴
回复 支持 反对

使用道具 举报

 楼主| 发表于 2017-4-12 14:53:49 | 显示全部楼层
jishuang 发表于 2017-4-12 14:44
流程的执行规则那边 打开后自动流转勾选上后在流程监控中操作这个任务有这个问题吗?
fid传的是你要把执行 ...

勾选上后,流程监控那边是可以修改执行者的,但是调用修改执行者的action就不行了,会在sExecuteMode2的字段上面更新一个值advanceWhenOpen
回复 支持 反对

使用道具 举报

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
35906
发表于 2017-4-12 16:12:54 | 显示全部楼层
本地测试没问题,修改执行者不会去修改sExecuteMode2的值
远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



如按照该方法解决,请及时跟帖,便于版主结贴
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|X3技术论坛|Justep Inc.    

GMT+8, 2024-4-17 06:58 , Processed in 0.068378 second(s), 23 queries .

Powered by Discuz! X3.4

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表