Oracle Forms弹出窗口多次出现

时间:2015-03-31 05:52:22

标签: oracle oracleforms

在Oracle Forms 10g中,我在WHEN-VALIDATE-RECORD触发器中有以下代码。

if(some_condition > 0) then
message('test');
RAISE FORM_TRIGGER_FAILURE;
end if;

问题是message('test');多次出现。我怎样才能确保它只出现一次。

1 个答案:

答案 0 :(得分:1)

触发器WHEN-VALIDATE-RECORD将关闭需要验证的记录after leaving the record或按commit

在您的情况下,我假设消息显示在commitchanged所有行之后,或者至少多于一行,例如post-query触发器。

因为更改了一行,触发器将针对所有这些行触发,您将多次收到该消息。

在查询记录后立即尝试,而不更改任何要提交的内容。 它应该说没有改变提交。如果它只提交10行,那么这就是你的问题。