【扩展报表】宏值超过1000个时,sql数据集中使用宏进行过滤报错ORA-01795

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

【扩展报表】宏值超过1000个时,sql数据集中使用宏进行过滤报错ORA-01795

问题描述:

1、定义sql宏,这个宏的值超过1000个了。

2、在oracle数据库中,新建sql数据集,切换到查询页签后添加方言标记,如图所示,where过滤条件中使用宏后(形如 where field in ('$宏名')),保存和预览都报错,提示:ORA-01795: 列表中的最大表达式数为1000.

3、不使用宏(将 in 后边的宏名替换为宏定义中的sql脚本),执行数据集结果是正确的。


分析解答:

EAS 8.2版本采用临时表方式处理 in 中的结果集,对于该问题需要按以下步骤操作:

1、更新运行引擎补丁PT156687(运行引擎,2021-1-28发布)或该领域最新补丁。

2、修改服务器配置文件:eas/server/properties/cconfig.properties中enableIDsINTmp值为true,不用重启eas服务。


EAS 8.5及以上版本:

采用拆分in为多个in查询方式,修改参数enableIDsINList=true即可。

【扩展报表】宏值超过1000个时,sql数据集中使用宏进行过滤报错ORA-01795

问题描述:1、定义sql宏,这个宏的值超过1000个了。2、在oracle数据库中,新建sql数据集,切换到查询页签后添加方言标记,如图所示,where...
点击下载文档
确认删除?
回到顶部
客服QQ
  • 客服QQ点击这里给我发消息