Oracle Apex 5日历 - 维护日历项表单不会引发任何数据

时间:2015-08-05 09:07:11

标签: oracle-apex oracle-apex-5

我正在APEX 5中创建一个日历,其中包含相关表单以维护日历项目。我通过向导在带有主键(和相关序列),日期列和标题列的表上执行此操作。日历屏幕工作正常,当我点击空白日期时,会出现一个模态表单,允许我添加日历项目。当我点击对项目应用更改时,我收到错误ORA-01403: no data found

我认为这是因为没有填充pk所以我在验证后添加了一个进程,以填充pk列,就像我们在其他默认CRUD表单中一样。它具有较低的序列号,因此应在按下应用更改按钮时首先执行。代码是:

begin 
if :P5_SIGHTING_ID is null then
    select "#OWNER#"."SIGHTING_SEQ".nextval
      into :P5_SIGHTING_ID
      from sys.dual;
end if; end;

然而,当我运行表单时,我仍然在尝试创建记录时仍然得到相同的无数据错误。

更新 - 如果我将pk项目从隐藏更改为文本字段,我可以看到它已正确填充,因此似乎不需要上面的触发器。我认为在重定向到主日历期间会引发此错误,但我不确定如何调试它。

1 个答案:

答案 0 :(得分:0)

好的,我已经解决了这个问题 - 如果可以帮助其他人,我会补充一下。

错误发生在Process Row,自动行处理(DML)过程中。默认情况下,向导生成的表单没有显示创建按钮,因为它上面有条件 - 但是默认情况下这似乎不起作用。如果我将创建按钮上的条件更改为ALWAYS,则表单可以正常工作,我可以在日历中创建和更新项目。