如何找到Oracle Forms接口集成的PL/SQL程序

Posted

技术标签:

【中文标题】如何找到Oracle Forms接口集成的PL/SQL程序【英文标题】:How to find PL/SQL program that Oracle Forms interface integrates 【发布时间】:2020-10-15 19:59:48 【问题描述】:

我有以下问题:

有一个Forms界面运行出错

ORA-04068: 包 () 的现有状态已被丢弃。

我需要找到 Forms 接口调用的 PL/SQL 程序。谁能告诉我如何找到它?

【问题讨论】:

重新编译.fmb;它将显示错误所在的确切位置。您可以从那里开始修复 【参考方案1】:

错误不一定是致命。例如,如果表单使用的包中添加了新的过程或函数,您只需重新编译表单即可。

但是,如果您向从表单调用的过程添加了新参数,那么您必须修改表单 PL/SQL 单元以反映这些更改(除非在参数列表,默认为NULL)。

所以:

在 Forms Builder 中打开表单 按 组合键重新编译(全部)表单 它将自动获取所有存储的 PL/SQL 程序的更改 阅读:您不必真正找出应归咎于哪一个;没关系 创建一个 .FMX 文件 运行表单 如果一切正常(即,如果表单中使用的存储过程的描述)没有改变,则表单将正常工作 否则,它会失败,但它现在会告诉您导致错误的原因,以便您进行调查

长话短说:重新编译表单。

【讨论】:

如果在重新编译包时表单连接到数据库,是否会发生此错误?如果从另一个表单调用此表单并且他们从未重新启动应用程序,我相信该错误也会持续存在。我明天可以在工作中测试一下并找出答案。 据我所知,@Zynon,是的 - 它可能会发生。另一方面,如果有人在使用包并且开发人员试图编译它,编译会“挂起”(即等到包“发布”)。但是是的 - 我同意 - 测试一下,看看会发生什么。

以上是关于如何找到Oracle Forms接口集成的PL/SQL程序的主要内容,如果未能解决你的问题,请参考以下文章

如何将 Xamarin Forms Shell 集成到 MvvmCross 设置中

如何将 Xamarin Forms Shell 集成到 MvvmCross 设置中

从 Oracle Forms Prompt 打开文本文件

我们可以针对 MySQL 数据库运行 Oracle Forms 吗?

如何从 Oracle Forms 中的触发器修改按钮的状态

如何使用 Oracle Forms 获取 Excel 文件的最后一行