我需要找到pl sql raise错误的替代解决方案。
我的代码:
elsIF :P79_TIP_IZV='ZS' and (:P79_P_VRSTA <> 'IZD' or :P79_VRSTA <> 'MSK' or :P79_P_VRSTA <> 'POI' or :P79_P_VRSTA <> 'ISI' or :P79_P_VRSTA is null)
then
raise_application_error (
-20031,'You have to choose - MSK, IZD, ISI or POI.');
此代码从按钮调用报告,当它完全正确时,我在URL链接的新标签中显示此消息:
ORA-20031:%20You %20have %20to %20choose .%20MSK,%20IZD,%20ISI%20ori%20POI.
我希望弹出窗口在按下按钮时显示此消息,然后再打开报告。
答案 0 :(得分:0)
您的代码让我觉得您正在使用Oracle Application Express。如果是,并且此代码被编写为页面进程,则必须使用此逻辑编写javascript Dynamic Action并将其分配给按钮。 PL / SQL验证代码在提交之后和页面加载之前执行。 PL / SQL过程的结果只在下一页上看到。