APEX 21.1分面搜索添加多筛选项触发ORA-00904错误咨询
问题解答
你遇到的是Oracle APEX 21.1的已知Bug,对应官方Bug编号为33061649。
该Bug的触发场景完全匹配你描述的情况:当分面搜索关联的经典报表数据源为跨Schema的数据库视图/表,且分面搜索添加超过1个筛选项时,APEX内部生成动态筛选SQL的逻辑会出现两处异常,对应你收到的两个报错:
Ajax call returned server error ORA-00904: "APPS"."HR_API": invalid identifier:APEX错误将数据源所属的Schema前缀拼接至内部调用的API标识前,导致非法标识符报错APEX - Column Gender, referenced by facet P24_G, is not available or unauthorized:多筛选项的权限校验逻辑无法正确识别跨Schema数据源的列权限,误报列不存在或未授权
修复与规避方案
- 正式修复:升级到APEX 21.1.6及以上的官方补丁版本,该Bug已在后续补丁中被正式修复
- 临时规避方案1:在当前APEX应用的解析Schema下为跨Schema的目标视图创建同义名,将经典报表的数据源替换为当前Schema下的同义名,即可避免APEX错误拼接Schema前缀
- 临时规避方案2:进入分面搜索区域的「高级」设置页,关闭使用动态查询配置项,强制分面搜索基于报表定义的固定SQL执行筛选,也可绕过该异常逻辑
内容的提问来源于stack exchange,提问作者Belal Awwad
相关产品推荐
相关产品推荐

