我正在使用Oracle APEX并且我正在生成一个交互式报告..现在我有一个下拉选择框,其中包含一个值列表(LOV)..我想要做的是使用当前选择的值在用于生成交互式报告的SQL查询的下拉框中。例如,这是用于生成交互式报告的SQL查询,仅显示具有等级Salesman的员工:
select "EMP"."EMPNO" as "EMPNO",
"EMP"."ENAME" as "ENAME",
"EMP"."RANK" as "RANK",
from "EMP" "EMP"
where "EMP"."RANK" = 'SALESMAN'
以上查询对我来说完全有效...现在我在APEX的同一页面上有一个名为RANKS的下拉框,并且有这个LOV:SALESMAN,CLERK,ACCOUNTANT,DEPTHEAD
如何更改SQL查询,以便它现在在排名下拉列表中查找当前选定的排名,然后只显示具有该排名的员工...
答案 0 :(得分:2)
例如,如果您的排名LOV被称为P1_RANKS,那么您可以将查询SQL更改为:
select empno, ename, rank
from emp
where rank = :P1_RANKS
但是,只有在选择了排名后才能使用。如果您想在未选择排名时显示所有员工,请执行以下操作:
select empno, ename, rank
from emp
where (:P1_RANKS is null or rank = :P1_RANKS)
您可以使选择列表提交页面以刷新报告,或者最好创建动态操作以在更改选择列表项时刷新报告。