如何在 oracle apex 中验证两个选择列表
Posted
技术标签:
【中文标题】如何在 oracle apex 中验证两个选择列表【英文标题】:How validate two select list in oracle apex 【发布时间】:2020-04-05 00:28:18 【问题描述】:我正在使用 Oracle apex,并且我有 2 个选择列表组件,它们从同一个表中获取元素。我想建立一个货币转换器,货币列表是“divisas”
我的问题是:我想验证当在一个选择组件上选择一个值时,另一个组件不包含选择列表 1 中的那个元素。反之亦然
Also when on select 1 is null on the select 2 must show all result from the table, and vice verse.
我从这个查询开始,但我做不到
select *
from divisas
where EN_APP = 'S'
and (
case when :P12_DIVISA is not null then (cod_divi <> :P12_DIVISA) else EN_APP = 'S' end
)
;
有人可以帮我吗?
【问题讨论】:
看看这个:***.com/questions/60676786/… 【参考方案1】:选择列表项有 Cascading List of Values 属性。但是,由于您想同时处理这两个项目,您将进入循环引用和死循环,因此它不会正常工作。
这里有一个选项可以满足您的需求;看看有没有帮助:
创建两个项目,例如P59_CURR_1
和 P59_CURR_2
(适用于两种货币)
他们的类型是选择列表项
选择页面操作 = “重定向并设置值”
SQL 查询如下所示(对于 P59_CURR_1
)
select cod_divi d, cod_divi r
from divisas
where cod_divi <> nvl(:P59_CURR_2, 'X') -- would be `:P59_CURR_1` for another item
order by cod_divi
不要设置父项的级联值列表!
就是这样;运行页面并查看它的行为。我在 apex.oracle.com 的 Apex 20.1 版本上看起来不错。
【讨论】:
以上是关于如何在 oracle apex 中验证两个选择列表的主要内容,如果未能解决你的问题,请参考以下文章
如何将 SQL 查询中一个字段的值用于 Oracle Apex 上另一个字段的值列表?