【发布时间】:2011-07-08 08:52:04
【问题描述】:
我有一个表单字段,其中一个值具有在应用程序设置表中定义的默认值。用户将在显示创建表单时看到默认值,但如果他们愿意,可以在保存新行之前将其更改为另一个值。
我在默认字段中没有看到任何方式来指定默认值是 SQL 查询的结果(例如,从 app_defaults where row_key = 1 中选择 default_rate)。
这肯定是可能的,但如何?
【问题讨论】:
标签: oracle oracle-apex
我有一个表单字段,其中一个值具有在应用程序设置表中定义的默认值。用户将在显示创建表单时看到默认值,但如果他们愿意,可以在保存新行之前将其更改为另一个值。
我在默认字段中没有看到任何方式来指定默认值是 SQL 查询的结果(例如,从 app_defaults where row_key = 1 中选择 default_rate)。
这肯定是可能的,但如何?
【问题讨论】:
标签: oracle oracle-apex
您可以使用 PL/SQL 块中的 SQL 查询直接分配它,例如
SELECT default_rate
INTO :myblock.rate
FROM app_defaults
WHERE row_key = 1;
【讨论】:
PL/SQL Function Body): DECLARE default_value number(9,2); BEGIN SELECT deflt_rate INTO default_value FROM app_defaults WHERE row_key = 1; RETURN default_value; END;
正如上面 Jeffrey 所说,最终解决方案可以完全在 APEX 内完成,但在页面项上使用 Default Value Type = PL/SQL Function Body。
DECLARE default_value number(9,2);
BEGIN
SELECT deflt_rate INTO default_value FROM app_defaults WHERE row_key = 1;
RETURN default_value;
END;
【讨论】: