当按钮按下oracle表单时字段变为空?
Posted
技术标签:
【中文标题】当按钮按下oracle表单时字段变为空?【英文标题】:Field goes null when button press oracle forms? 【发布时间】:2018-08-27 07:58:43 【问题描述】:我正在为 oracle 表单 10g 中的搜索数据创建表单
当用户从非数据库字段中选择 LOV 并按下搜索按钮时,非数据库字段变为空。按下按钮时我希望字段不为空
【问题讨论】:
【参考方案1】:截图会有所帮助;目前尚不清楚该非数据库字段放置在哪里。如果它是一个表格布局论坛,它是否放置在所有其他字段中?还是它在控制、非数据库块中的某个地方?
无论如何:这就是我的做法。
首先,如果可能,请避免发明您自己的搜索算法。 Forms非常擅长自己做这些事情。很快:
进入查询模式 输入搜索条件(从值列表中选择;为什么不呢?) 执行查询 绝对不需要额外的编程(除了 LoV)如果出于某种原因,您必须“按自己的方式”做:
将非数据库LoV字段放入单独的控制块中WHEN-BUTTON-PRESSED
应该
使用 SET_BLOCK_PROPERTY
并将数据库块的 DEFAULT_WHERE
(或者,甚至更好,ONETIME_WHERE
)设置为选定的 LoV 值
导航到数据库块 (GO_BLOCK
)
EXECUTE_QUERY
或者,WHEN-BUTTON-PRESSED
只会EXECUTE_QUERY
,但您可以在设置搜索条件的数据库块上使用PRE-QUERY
触发器,例如:database_block.name := :control_block.lov_field;
至于你的问题:
LoV 字段似乎是数据库块的一部分,一旦执行查询,它就会被清除。看看你是否可以使用POST-QUERY
trigger 重新填充它
或者,如果不是,请检查 WHEN-BUTTON-PRESSED
触发器在做什么 - 也许它会清除它
看看我写的有帮助。如果没有,请编辑问题(您的初始消息)并提供有助于我们帮助您的其他信息。
【讨论】:
以上是关于当按钮按下oracle表单时字段变为空?的主要内容,如果未能解决你的问题,请参考以下文章