Oracle APEX-如何以编程方式在弹出式LOV中选择显示值

时间:2020-10-20 13:38:52

标签: oracle-apex oracle-apex-19.2

是否可以使用PL / SQL在弹出式LOV中设置选定的值?

我用

:P2_MYLOV := myval

哪个确实将LOV的返回值设置为myval,但未显示所选的相应显示值。如何通过编程选择LOV值并设置相应的显示值?有可能吗?

当我的LOV基于SQL查询并且只显示一个值时,它确实对我有用。

SELECT val_id
FROM Table1
WHERE field1 = 'test'
AND parent_id = :P2_ITEM1;

但是一旦我将其设置为具有多个列的共享组件值列表,它就会停止工作

1 个答案:

答案 0 :(得分:0)

不清楚您要问什么。我最大的问题是您何时打算改变价值。我猜您在某个地方的页面上有一个Apex项目,它是Popup LOV,您想在页面加载时选择一个值吗?

您已经有了 Source 项目,该项目是控制页面加载时填充值的计算。这可以通过PL / SQL表达式,SQL查询或其他方式完成。可以在每次“始终替换会话状态中的任何值”或会话状态中没有值“仅当会话状态中的当前值为空”时重新计算。

另一个选项是 Default ,它是在计算Source后仍为空的值。那也可以是表达式或查询。

如果您尝试更改浏览器中某项的值(例如,响应某些用户操作),则需要一个动态操作,该操作不使用PL / SQL。唯一可以发挥作用的时间是只能在数据库中计算新值,而Apex需要往返数据库,但这并不常见。

[我刚刚在apex.oracle.com上尝试了对弹出式LOV的动态操作,但是它没有用。我不知道为什么。不过,它可以与常规选择列表一起使用。]