我有一个在Weblogic服务器上运行的Oracle Forms 11 g应用程序。默认的表单/登录页面具有一些不会触发的PL / SQL触发器。其余配置似乎成功。
谁能给我有关从哪里开始寻找的指示?预先感谢。
答案 0 :(得分:1)
顾名思义,触发会在某些东西触发时触发。例如,
WHEN-BUTTON-PRESSED
触发器POST-QUERY
触发器WHEN-NEW-FORM-INSTANCE
触发器,依此类推。
因此,请确保确实触发了触发器。您拥有它们的事实并不意味着它们会运行,仅仅是因为。
为了找出答案,您有两个选择:
WHEN-NEW-FORM-INSTANCE
中),通过右键单击断点的左边距来设置断点(您将看到下一步做什么)WHEN OTHERS THEN NULL
或类似名称的异常处理程序?如果是这样,请摆脱它们。即使引发了异常(例如NO_DATA_FOUND
或TOO_MANY_ROWS
,仅举两个最流行的和最常见的情况),THEN NULL
也会默默屏蔽它另一种方法是将MESSAGE
调用放入触发器中,例如
begin
message('running WBP trigger: step 1');
... the rest of your code goes here
end;
这样做,“消息后消息”将在屏幕上引发“警报”(因为您必须单击“确定”才能看到消息中的内容),并且您将迅速看到触发了哪些触发器,而没有触发。然后进一步研究-前面描述的调试会有所帮助。
如果以上方法均无济于事,则您必须描述正在发生的事情,但这一次提供了更多信息。您写的内容描述性不强。无论如何,祝你好运。