【工作流管理】工作流角色参与人--取错单据对象组织字段
# 前言
工作流角色是根据行政组织进行匹配的,入参为流程中配置的单据上某组织字段,但单据存在多个单据对象时,流程运行时获取单据组织字段时可能取错单据对象,导致组织字段不存在或者无法匹配到。
# 问题现象
节点挂起,获取不到参与人,流程实例有报错信息如下:
``` java
Caused by: com.kingdee.bos.workflow.WfException :
单据(UH5CP6HOQS+f870ZlgdknEAoToE=)组织属性(entries.costCenter)值为空.
com.kingdee.bos.workflow.WfException: 单据(UH5CP6HOQS+f870ZlgdknEAoToE=)组织属性(entries.costCenter)值为空.
at com.kingdee.bos.workflow.cust.app.impl.WfRoleUtils.findOrgInfosBillInfo(WfRoleUtils.java:220)
at com.kingdee.bos.workflow.cust.app.impl.WfRoleAdapter.getRolePersons(WfRoleAdapter.java:321)
at sun.reflect.GeneratedMethodAccessor2058.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at com.kingdee.bos.workflow.util.WfRoleInvoke.getRolePersons(WfRoleInvoke.java:135)
at com.kingdee.bos.workflow.enactment.ParticipantHelper.getPersonsByParticipants(ParticipantHelper.java:618)
at com.kingdee.bos.workflow.enactment.ParticipantHelper.getPersonsByParticipants(ParticipantHelper.java:168)
......
```
# 问题原因
流程中存在多个单据对象时,流程定义文件中没有记录配置的具体单据,根据select fbizObjId from T_WFR_ProcInstBizObj where fprocinstid= ? 随机取一个,导致偶发取错单据对象,获取不到工作流角色参与人。
![1.webp](/download/0100590ff30fa4a647ac962901d8f20c163f.webp)
# 解决方案
打最新的工作流补丁并且重新配置下工作流角色即可。
补丁后配置的工作流角色将会记录具体单据的bostype到属性wfrolebilltype中,如下图:
![2.webp](/download/0100590a59d29b304ff8a867f726f1647628.webp)
【工作流管理】工作流角色参与人--取错单据对象组织字段
# 前言工作流角色是根据行政组织进行匹配的,入参为流程中配置的单据上某组织字段,但单据存在多个单据对象时,流程运行时获取单据组织字...
点击下载文档
本文2024-09-16 22:00:48发表“eas cloud知识”栏目。
本文链接:https://wenku.my7c.com/article/kingdee-eas-45385.html
您需要登录后才可以发表评论, 登录登录 或者 注册
最新文档
热门文章