我知道有人可以做到这一点......但不是我。 我想要一个选择列表,该列表将返回一个可以在报告查询中使用的“where”语句。 例如,我的表中有一个名为“条件 A”的列,它是 1 或 0。我的表中有另一列名为“条件 B”,它是 1 或 0。我想要一个名为“选项”将让用户选择自己的where 语句。 对于此示例,选项为: 其中条件 A = 1 其中条件 B = 1 空
然后在我的报告查询中,我可以使用该返回值,以便我的查询可以说: 选择 * 来自我的表 选项(&C)。
类似这样的事情。 我希望我说得清楚。 我尝试了几种不同的方法来使其发挥作用,但没有成功。 请帮忙! 谢谢!
这是一个例子。这是关于 EMP 表的报告,其中包含返回不同 where 子句的选择列表。
页面项 P273_WHERE_CLAUSE,输入“选择列表”,值:
“返回 SQL 查询的函数体”类型的交互式报告。这是必需的,因为 SQL 需要动态生成。
来源:
DECLARE
l_query varchar2(4000);
l_where_clause varchar2(4000);
BEGIN
-- need default value so report compiles correctly
l_where_clause := CASE WHEN :P273_WHERE_CLAUSE IS NULL THEN '1 = 0' ELSE :P273_WHERE_CLAUSE END;
l_query :=
q'!select
EMPNO,
ENAME
from
EMP
where
%0!';
return(apex_string.format(l_query, l_where_clause));
END;
设置“要提交的页面项目”(用于下一步的动态操作)
创建针对 P273_WHERE_CLAUSE 更改的动态操作,并在交互式报告上执行刷新操作。