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

问题描述

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

我用

:P2_MYlov := myval

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

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

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

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

解决方法

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

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

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

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

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

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...