当我在SQL开发人员中调用我的程序包时,我很担心发生错误

时间:2019-03-28 11:52:17

标签: sql oracle plsql oracle-apex

调用包裹时出现错误 错误是

  

从第1行开始的错误-   PKG_Generate_GRNo.GenerateGR(TO_NUMBER(:P164_APP_ID,   '9999999'),:: APP_USER,:P164_FIRST_NAME,:P164_LAST_NAME,:P164_EMAIL,:P164_SKYPE_ID,:P164_COUNTRY,:P164_DATE_OF_BIRTH)   错误报告-未知命令

     

PKG_Generate_GRNo.GenerateGR(TO_NUMBER(:P164_APP_ID,   '9999999'),: APP_USER,:P164_FIRST_NAME,:P164_LAST_NAME,:P164_EMAIL,   :P164_SKYPE_ID,:P164_COUNTRY,:P164_DATE_OF_BIRTH);

我在SQL Developer和Apex中都调用此代码,但是当它调用时显示错误

  

会话状态保护冲突:这可能是由于手动更改受保护页面项目P164_COURSECOUNT引起的。如果您不确定导致此错误的原因,请与应用程序管理员联系以寻求帮助。

我想成功打电话给我的包裹

2 个答案:

答案 0 :(得分:1)

违反会话状态保护肯定是Apex错误,与您的页面设置有关。您的软件包似乎正在尝试更改只读页面的状态。 See this other question

错误消息P164_COURSECOUNT中的项目标识符与您传递给包(:P164_APP_ID)的参数具有相同的前缀,因此大概与同一页面相关。我们对您的应用程序或其架构一无所知,因此很难提供具体建议。也许您需要更改页面或项目设置,也许您需要更改包装的用途。只有您可以说出正确的做法。

答案 1 :(得分:0)

由于您没有发布整个命令,因此请注意:您必须将其包含在begin-end块中,例如

BEGIN
   PKG_Generate_GRNo.GenerateGR (TO_NUMBER ( :P164_APP_ID, '9999999'),
                                 :APP_USER,
                                 :P164_FIRST_NAME,
                                 :P164_LAST_NAME,
                                 :P164_EMAIL,
                                 :P164_SKYPE_ID,
                                 :P164_COUNTRY,
                                 :P164_DATE_OF_BIRTH);
END;
/