Oracle apex 语句中包含多个输入的经典报告问题

Oracle apex 语句中包含多个输入的经典报告问题,oracle-apex,apex-code,oracle-apex-5,oracle-apex-5.1,Oracle Apex,Apex Code,Oracle Apex 5,Oracle Apex 5.1,我正在尝试使用动态操作刷新报表。并获取以下错误: {'dialogue':{'uv':true,'line':[{'V':“小部件故障}]} ORA-20876:停止顶点的引擎。 经典报告“}]} 我认为这是一个字符串的问题,它不能在sql查询中接受和ST.ID(:P11\u ROW\u PK) 请提出解决方法。此问题需要您在中提供的上下文 如果P11_ROW_PK是一个带分隔符的ID列表,那么您必须相应地构造查询,而不是期望IN语句解构包含字符串的绑定变量 试试这个 select * fro

我正在尝试使用动态操作刷新报表。并获取以下错误:

{'dialogue':{'uv':true,'line':[{'V':“小部件故障}]} ORA-20876:停止顶点的引擎。 经典报告“}]}

我认为这是一个字符串的问题,它不能在sql查询中接受
和ST.ID(:P11\u ROW\u PK)


请提出解决方法。

此问题需要您在中提供的上下文

如果P11_ROW_PK是一个带分隔符的ID列表,那么您必须相应地构造查询,而不是期望IN语句解构包含字符串的绑定变量

试试这个

select * from your_table
where st.id in (select column_value from apex_string.split(:P11_ROW_PK))
where REGEXP_LIKE(CUSTOMER_ID,“^(”| | REPLACE(:P4_SEARCH,“,”|“))| |“)$”)

只有当您使用较低版本的APEX时,上述代码才会与APEX_字符串相同。

这是硬编码的吗?即使我在报告中选择了通用列,我也能看到错误:
从APEX_字符串中选择列值。拆分(:P11_ROW_PK)
@scott您说的“硬编码”是什么意思?它接受bind变量中的字符串,并将其拆分为一列中的多行。您可以选择指定您的分隔符。它给出错误:
报告错误:ORA-00904:“APEX_字符串”。“SPLIT”:无效标识符
我认为APEX 4.2不支持APEX_字符串函数需要找到其他解决方案@ScottString_to_表也做了类似的事情,但您需要将其封装在一个流水线函数中,以便能够在SQL中使用它。感谢Scott,我从link获得了另一个解决方案: