【发布时间】:2020-06-08 15:50:23
【问题描述】:
我正在寻找一种在 Popup Lov 项目中设置值的方法。我正在使用 Oracle Apex,并且正在尝试使用动态操作设置 Popup LOV 的值。我想设置一年后从日期选择器中选择一个日期并在弹出的 LOV 项目中刷新年份。
在 Apex 上,我创建了一个名为 P2_YEAR 的弹出 Lov 项目和一个名为 P2_DATE 的日期选择器。在 P2_date,我创建了一个具有两个真实条件的动态操作(客户端条件项不为空 - P2_YEAR)。
第一个条件:执行pl\sql代码提取年份:
declare
year number;
tmp date;
begin
tmp:=:P2_DATE;
SELECT EXTRACT (YEAR FROM tmp) YEAR
into year
FROM DUAL;
:P2_EXTRACT_YEAR := YEAR;
return;
end;
:P2_EXTRACT_YEAR 是隐藏的项目。
第二个条件:一个 Exectute Javascript 代码
$s('extractyear',$v('P2_EXTRACT_YEAR'));
在 P2_Year 中,我在 Advanced - CSS classes 中添加了类名 extractyear。
我将获得的是在弹出项目框中显示年份,如果我按下箭头以仅显示从日期中提取的之前的年份。
此配置不起作用。
【问题讨论】:
-
您是否考虑过使用级联值列表来获得此功能?
-
是的,可以考虑,但是day字段和year字段必须是独立的。在某种程度上,我设法通过更改第二个条件来解决它``` apex.item("P2_YEAR").setValue(apex.item("P2_EXTRACT_YEAR").getValue());``` 现在它可以工作了,但我当我按下按钮将所选值传递到下一页时,出现会话状态冲突错误。
标签: oracle-apex