从表单调用报表而不显示表单

时间:2011-05-25 11:51:30

标签: oracle forms report

正如标题所说,我想从表单中调用报表而不实际显示表单。我是Oracle表单的新手。我试着做以下但是没有用:

1)插入代码以在WHEN-NEW-FORM-INSTANCE触发器中调用报告。

2)删除画布,以便不显示表单。

但是我收到了错误

  

RM-30173:模块中没有画布

有可能这样做吗?当点击oracle表单应用程序中的菜单项时,我试图显示报告,这反过来会调用上面的表单但直接显示 报告而不是显示UI。

更新

我正在使用Forms Builder 10.1.2。

至于为什么我不想直接在菜单(MMB)中执行此操作,菜单没有附加报告的选项,我已经有一个生成报告的工作表单但代码调用报告是按下按钮触发的。

在, http://forums.oracle.com/forums/thread.jspa?threadID=1107427&tstart=45,我正在尝试做那个线程中建议的Andreas Weiden。

5 个答案:

答案 0 :(得分:1)

我认为您的问题可能在于将菜单选项限制为仅打开表单。

例如,您可以让表单中的菜单执行一个表单触发器来调用报表。或者web.show_document到报告的URL。

您使用的是什么版本的表单?已经有一段时间了,因为我对表格做了很多,但这可能会给你一个开始。

答案 1 :(得分:1)

我只熟悉Reports 6i,从菜单中运行报告很简单。

我们创建了一个PL / SQL命令类型的菜单项,删除了在菜单项代码框中运行报告模块的代码,一切都很好。如果你不能在10g报告中做类似的事情,我会感到惊讶。

答案 2 :(得分:1)

将代码从表单的按钮移动到公共库中的过程中。将库附加到表单和菜单模块。从表单按钮和菜单中调用该过程。

答案 3 :(得分:1)

我通过在'虚拟表单'中创建一个空白画布来解决问题,因为'FRM-30173:当表单中没有找到画布时,返回了模块包含没有画布'。

Andreas Weiden建议的方法:http://forums.oracle.com/forums/thread.jspa?threadID=1107427&tstart=45效果很好。

答案 4 :(得分:0)

您也可以创建报告,只需在菜单选项后面调用它,但隐藏报告参数表单,报告将自动开始生成。在调用报告名称之前的菜单选项中,只需将报告参数设置为hide并将destype设置为screen。这样可以省去创建空白画布的麻烦,并且如果抛出任何错误消息,可能必须禁止错误消息。