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

QQ登录

只需一步,快速开始

查看: 3895|回复: 6

[结贴] 计算的结果不是组织单元列表

[复制链接]

29

主题

94

帖子

458

积分

中级会员

Rank: 3Rank: 3

积分
458
QQ
发表于 2018-3-6 15:10:27 | 显示全部楼层 |阅读模式
请问:我在流程中的一个环节处写了个执行规则,出现如下错误                         捕获.PNG


2018-03-06 15:07:07 excute stream action, params:{"accept":"application/json","action":"externalAdvanceProcessQueryAction","actionFlag":"__action_0__","activity":"businessActivity4","contentType":"application/json","executeContext":"","executor":"/E93A43058AD540C191CEDC9B6C79E940.ogn/PSN01@E93A43058AD540C191CEDC9B6C79E940.psm","parameters":{"task":"EFB3FEAD70E147B88A859168CF94A3BF"},"process":"/WorkingCenter/ITManagement/process/SoftwareDevelopApply2/softwareDevelopApply2Process"}
java.lang.reflect.InvocationTargetException
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:497)
        at com.justep.system.action.Engine.invokeActions(Native Method)
        at com.justep.system.action.Engine.invokeActions(Unknown Source)
        at com.justep.business.server.BusinessServer.doAction(Unknown Source)
        at com.justep.business.server.BusinessServer.doExcute(Unknown Source)
        at com.justep.business.server.BusinessServer.excute(Unknown Source)
        at com.justep.business.server.BusinessServer.excute(Unknown Source)
        at com.justep.business.server.BusinessServerServlet.execService(Unknown Source)
        at com.justep.business.server.BusinessServerServlet.service(Unknown Source)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:723)
        at com.justep.x.bs.BusinessServerServlet.service(Unknown Source)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:723)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
        at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
        at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
        at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
        at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103)
        at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
        at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:293)
        at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:861)
        at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:606)
        at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489)
        at java.lang.Thread.run(Thread.java:745)
Caused by: java.lang.reflect.InvocationTargetException
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:497)
        at com.justep.system.action.Engine.invokeAction(Native Method)
        at com.justep.system.action.Engine.invokeAction(Unknown Source)
        at com.justep.model.impl.UtilImplementInstance.invokeAction(Unknown Source)
        at com.justep.model.impl.UtilImplementInstance.invokeAction(Unknown Source)
        at com.justep.system.action.ActionUtils.invokeAction(Unknown Source)
        at com.justep.system.process.ProcessUtils.advanceProcessQuery(Unknown Source)
        at ExternalProcessProcedure.advanceProcessQuery(ExternalProcessProcedure.java:26)
        ... 27 more
Caused by: com.justep.system.util.BizSystemException: 编码: JUSTEP180226; 提示: 表达式"concat(currentProcessLabelOfProcessContext(),':',relationValue('WO_SoftwareDevelopApply',:sData1,'','','fCreatePsnName','/WorkingCenter/ITManagement/data'),' 软件开发/  采购申请')"计算的结果不是组织单元列表
        at com.justep.system.util.BizSystemException.create(Unknown Source)
        at com.justep.system.process.ProcessRuleEngine.exprToOrgUnit(Unknown Source)
        at com.justep.system.process.ProcessRuleEngine.executorRangeToProcessControlItem(Unknown Source)
        at com.justep.system.process.ProcessRuleEngine.executeRuleToProcessControlItem(Unknown Source)
        at com.justep.system.process.ProcessRuleEngine.executeRuleToProcessControl(Unknown Source)
        at com.justep.system.process.ProcessQueryEngine.makeFlowIn(Unknown Source)
        at com.justep.system.process.ProcessQueryEngine.makeTo(Unknown Source)
        at com.justep.system.process.ProcessQueryEngine.makeTo(Unknown Source)
        at com.justep.system.process.AdvanceProcessQueryEngine.doFlowOutNormal(Unknown Source)
        at com.justep.system.process.AdvanceProcessQueryEngine.doFlowOut(Unknown Source)
        at com.justep.system.process.AdvanceProcessQueryEngine.doExecute(Unknown Source)
        at com.justep.system.process.AdvanceProcessQueryEngine.execute(Unknown Source)
        at com.justep.system.process.ProcessEngine.advanceQuery(Unknown Source)
        at ProcessProcedure.advanceProcessQuery(ProcessProcedure.java:343)
        ... 38 more



该怎么解决?
是  relationValue要先获取人员ID再用 findPersonMembersByID 方法根据人的ID获取人员成员吗?

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
36185
发表于 2018-3-6 16:00:06 | 显示全部楼层
远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



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

使用道具 举报

29

主题

94

帖子

458

积分

中级会员

Rank: 3Rank: 3

积分
458
QQ
 楼主| 发表于 2018-3-6 16:22:05 | 显示全部楼层
jishuang 发表于 2018-3-6 16:00
是的
http://bbs.wex5.com/forum.php?mod=viewthread&tid=49744

可是我改成这样concat(currentProcessLabelOfProcessContext(),':',findPersonMembersByID('',relationValue('WO_SoftwareDevelopApply',:sData1,'','','fCreatePsnID','/WorkingCenter/ITManagement/data')),' 软件开发/采购申请')
就报别的错误了:      捕获.PNG
Caused by: com.justep.model.exception.ModelException: 编码: JUSTEP154064; 提示: 计算表达式concat(currentProcessLabelOfProcessContext(),':',findPersonMembersByID('',relationValue('WO_SoftwareDevelopApply',:sData1,'','','fCreatePsnID','/WorkingCenter/ITManagement/data')),' 软件开发/采购申请')出错
        at com.justep.model.exception.ModelException.create(Unknown Source)
        at com.justep.system.ksql.parser.ExpressionImpl.evaluate(Unknown Source)
        at com.justep.system.process.ExpressEngine.calculate(Unknown Source)
        at com.justep.system.process.ProcessRuleEngine.exprToOrgUnit(Unknown Source)
        at com.justep.system.process.ProcessRuleEngine.executorRangeToProcessControlItem(Unknown Source)
        at com.justep.system.process.ProcessRuleEngine.executeRuleToProcessControlItem(Unknown Source)
        at com.justep.system.process.ProcessRuleEngine.executeRuleToProcessControl(Unknown Source)
        at com.justep.system.process.ProcessQueryEngine.makeFlowIn(Unknown Source)
        at com.justep.system.process.ProcessQueryEngine.makeTo(Unknown Source)
        at com.justep.system.process.ProcessQueryEngine.makeTo(Unknown Source)
        at com.justep.system.process.AdvanceProcessQueryEngine.doFlowOutNormal(Unknown Source)
        at com.justep.system.process.AdvanceProcessQueryEngine.doFlowOut(Unknown Source)
        at com.justep.system.process.AdvanceProcessQueryEngine.doExecute(Unknown Source)
        at com.justep.system.process.AdvanceProcessQueryEngine.execute(Unknown Source)
        at com.justep.system.process.ProcessEngine.advanceQuery(Unknown Source)
        at ProcessProcedure.advanceProcessQuery(ProcessProcedure.java:343)
        ... 38 more
Caused by: com.justep.model.exception.ModelException: 编码: JUSTEP154075; 提示: 调用函数concat出错
        at com.justep.model.exception.ModelException.create(Unknown Source)
        at com.justep.system.ksql.parser.ExpressionImpl.functionExpression(Unknown Source)
        at com.justep.system.ksql.parser.ExpressionImpl.constExpression(Unknown Source)
        at com.justep.system.ksql.parser.ExpressionImpl.unaryExpression(Unknown Source)
        at com.justep.system.ksql.parser.ExpressionImpl.multiExpression(Unknown Source)
        at com.justep.system.ksql.parser.ExpressionImpl.addExpression(Unknown Source)
        at com.justep.system.ksql.parser.ExpressionImpl.compExpression(Unknown Source)
        at com.justep.system.ksql.parser.ExpressionImpl.notExpression(Unknown Source)
        at com.justep.system.ksql.parser.ExpressionImpl.andExpression(Unknown Source)
        at com.justep.system.ksql.parser.ExpressionImpl.orExpression(Unknown Source)
        ... 53 more
Caused by: java.lang.IllegalArgumentException: array element type mismatch
        at java.lang.reflect.Array.set(Native Method)
        ... 62 more


是我的concat函数写错了吗?
回复 支持 反对

使用道具 举报

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
36185
发表于 2018-3-6 16:34:33 | 显示全部楼层
array element type mismatch
参数给的不正确

concat是字符串合并

findPersonMembersByID返回的是List
远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



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

使用道具 举报

29

主题

94

帖子

458

积分

中级会员

Rank: 3Rank: 3

积分
458
QQ
 楼主| 发表于 2018-3-7 08:12:54 | 显示全部楼层
jishuang 发表于 2018-3-6 16:34
array element type mismatch
参数给的不正确

那么我该如何修改呢
回复 支持 反对

使用道具 举报

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
36185
发表于 2018-3-7 09:21:26 | 显示全部楼层
这个表达式是这是在什么地方的?执行规则的执行者表达式?执行规则的表达式方法的类型必须是List<OrgUnit>的
如果是通过业务数据控制执行者参考2楼发

如果设置的是标题,自己定义一个函数,函数中获取到可以调用API通过人员ID直接获取需要的人员成员的信息然后拼接字符串返回


自定义函数可以参考http://pan.baidu.com/s/1cxHxro#list/path=%2F第4章4.4.3
远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



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

使用道具 举报

29

主题

94

帖子

458

积分

中级会员

Rank: 3Rank: 3

积分
458
QQ
 楼主| 发表于 2018-3-7 12:42:35 | 显示全部楼层
jishuang 发表于 2018-3-7 09:21
这个表达式是这是在什么地方的?执行规则的执行者表达式?执行规则的表达式方法的类型必须是List的
如果是 ...

ok了,我问了一下同事,说是执行规则写错了,我改成orgUnitsAnd(findPersonMembersInOrg(relationValue('WO_SoftwareDevelopApply',:sData1,'','','fCreateOgnID','/WorkingCenter/ITManagement/data'),true),findOrgUnitsHasCActivity('',false))
可以了,
谢谢
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-7-6 10:02 , Processed in 0.054195 second(s), 26 queries .

Powered by Discuz! X3.4

© 2001-2013 Comsenz Inc.

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