【发布时间】:2013-12-11 09:11:45
【问题描述】:
我用谷歌搜索了这个,但很遗憾,找不到任何解决方案。
我有一个带有单个块的简单表单(Oracle Forms Builder 10g)。该表单以 Oracle EBS 样式编写,即该块基于一个视图,该视图将基表字段连同 rowid 和 DML 事件(插入、更新等触发器)由表处理程序处理包。
我想添加的功能如下:当用户创建新记录时,表单会自动建议表单中所有字段的值。因此,我创建了一个 WHEN-CREATE-RECORD 触发器来计算字段值并分配它们。所有,除了主键是基于序列并由包处理。
当我创建新记录时一切正常,但当我尝试保存它时,我得到的只是 FRM-40401“没有更改保存”错误,没有任何反应。
我试图追踪错误,似乎表单将记录视为新记录,没有任何更改。即使我尝试将记录状态显式更改为 INSERT,也会发生这种情况。
我已经尝试将默认行为更改为 STANDARD.COMMIT(为此创建了 ON-COMMIT 触发器),但这并没有解决任何问题。
为了记录,我尝试使表单基于表,摆脱表处理程序并将所有 DML 留给 Forms。我仍然得到 FRM-40401。
我不明白出了什么问题,请问有什么想法吗?
【问题讨论】:
标签: oracle oracleforms