科目分配提示成功,实际失败

栏目:eas cloud知识作者:金蝶来源:金蝶云社区发布:2024-09-16浏览:1

科目分配提示成功,实际失败

## 分享一个科目分配提示成功,实际失败的场景和解决办法 **问题描述**:客户之前dep二开过科目,给科目增加字段;后面禁用了dep后,正常进行科目分配操作,提示分配成功,但实际并没有成功。 **问题分析**:遇到异常问题,首先收集查看apusic日志,通过查看日志发现分配确实产生了异常堆栈。 ```xml java.sql.SQLException: Missing IN or OUT parameter at index:: 76 ``` ![image.webp](/download/01005567ca9622ad46cdae20d516e1cd63b3.webp) 科目新增预编译Sql为静态变量,占位符还是dep启用时科目属性个数;禁用科目后,科目元数据属性个数发生变化,但缓存sql还没有变化,所以造成占位符不一致,sql执行报错。 **触发时机**:dep拓展了科目实体字段,启用并且分配过科目,产生缓存;禁用dep后,再次分配科目就会出现上述问题,并在apusic输出对应日志。 **修复方式**: 1、重启服务可以解决; 2、清空该元数据缓存; ```javascript //查询分析器执行服务端脚本: var clazz = java.lang.Class.forName("com.kingdee.eas.base.core.EntityAccess"); var field = clazz.getDeclaredField("insertSQL"); field.setAccessible(true); field.get(clazz).clear(); ```

科目分配提示成功,实际失败

## 分享一个科目分配提示成功,实际失败的场景和解决办法**问题描述**:客户之前dep二开过科目,给科目增加字段;后面禁用了dep后,正常进...
点击下载文档
确认删除?
回到顶部
客服QQ
  • 客服QQ点击这里给我发消息