【问题标题】:Oracle APEX - How to select a display value in a Popup LOV programmaticallyOracle APEX - 如何以编程方式在弹出式 LOV 中选择显示值
【发布时间】:2020-10-20 13:38:52
【问题描述】:

有没有办法使用 PL/SQL 在弹出式 LOV 中设置选定值?

我用

:P2_MYLOV := myval

它确实将 LOV 的返回值设置为myval,但不显示选定的相应显示值。如何以编程方式选择 LOV 的值并设置相应的显示值?有可能吗?

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

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

但是一旦我将它设置为具有多列的共享组件 List of Values,它就会停止工作

【问题讨论】:

  • 当我尝试它时,它按预期工作。您可以在 apex.oracle.com 上设置一个示例吗?
  • 我遇到了类似的问题,我用 DA 解决了它。能简单解释一下如何更改pl/sql中的值吗?

标签: oracle-apex oracle-apex-19.2


【解决方案1】:

不太清楚你在问什么。我最大的问题是你什么时候试图改变价值。我猜你有一个 Apex 项目,它是某个页面上的 Popup LOV,并且你希望在页面加载时选择一个值?

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

另一个选项是 Default,如果在计算 Source 之后该值仍然为空,则使用该值。这也可以是表达式或查询。

如果您尝试更改浏览器中某个项目的值,例如响应某些用户操作,那么您需要一个不使用 PL/SQL 的动态操作。唯一起作用的情况是新值只能在数据库中计算,并且 Apex 需要对数据库进行往返,但这并不常见。

[我刚刚在 apex.oracle.com 上尝试了对弹出式 LOV 的动态操作,但没有成功。我不确定为什么。不过,它适用于常规选择列表。]

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-08-30
    • 1970-01-01
    • 2021-07-06
    • 2011-01-08
    • 2021-06-02
    • 2018-07-31
    • 1970-01-01
    • 2010-09-24
    相关资源
    最近更新 更多