Oracle Apex:在另一个项目更改时刷新项目
Posted
技术标签:
【中文标题】Oracle Apex:在另一个项目更改时刷新项目【英文标题】:Oracle Apex: refresh item on another item change 【发布时间】:2020-06-29 08:35:15 【问题描述】:每当 Select List
项目被修改时,我都会尝试刷新 Shuttle
项目。
到目前为止我做了什么:
我有一个项目P1_MY_LIST
,它是一个价值列表。我有一个P1_MY_SHUTTLE
,由这个查询填充:
SELECT a, b FROM my_table WHERE col1 = :P1_MY_LIST;
然后我在P1_MY_LIST
上创建了一个更改事件,其中包含一个设置为刷新P1_MY_SHUTTLE
项目的TRUE Event
。
但是,当我在 P1_MY_LIST
中选择某些内容时,什么也没有发生。
谁知道我做错了什么?
【问题讨论】:
【参考方案1】:要根据选择列表中的选定值刷新穿梭,最好使用旧的“值的级联列表”属性。
在您的情况下:在页面项目 P1_MY_SHUTTLE 上,将“值级联列表”>“父项目”设置为 P1_MY_LIST。应该这样做。
如果由于某种原因在您的情况下不起作用,您可以执行动态操作,但有一点需要注意。没有向服务器提交所选值的选项,因此您的选择列表将不会使用新选择的 P1_MY_LIST。结果,它看起来好像没有令人耳目一新,但实际上确实如此。您可以通过
在您的刷新操作之前添加一个真正的操作。 操作:“执行 PL/SQL 代码” PL/SQL 代码“NULL;” (您无需执行任何操作) 要提交“P1_MY_LIST”的项目。这将确保 P1_MY_LIST 在再次执行查询时被拾取,并且它将在您的穿梭车中显示正确的值。
【讨论】:
要提交的项目 "P1_MY_LIST" -> 成功了!这就是我所缺少的。非常感谢。以上是关于Oracle Apex:在另一个项目更改时刷新项目的主要内容,如果未能解决你的问题,请参考以下文章
Oracle Apex Shuttle 项目数组在提交时为空