【问题标题】:How to open PDF File From oracle forms 11g?如何从 oracle forms 11g 打开 PDF 文件?
【发布时间】:2019-08-08 14:14:54
【问题描述】:

我将 Oracle Database 11gR2 与 Oracle Forms 11gR2 结合使用。我在服务器机器上保存了 PDF 文件。我创建了名称为“帮助”手动 PDF 文件的按钮。现在我想当用户点击他们本地机器上的按钮然后从服务器机器上打开 PDF 文件。

我找到了这段代码:

host('rundll32 url.dll,FileProtocolHandler c:\file_name.pdf');

这段代码运行正确吗? Oracle 表单 11g

【问题讨论】:

  • 它运行正确吗?我不知道;你试过了吗?一个简单的host('c:\file_name.pdf'); 可以调用计算机上的默认 PDF 阅读器并打开 PDF 文件怎么样?
  • 我需要添加服务器机器的IP地址吗?
  • HOST 在服务器上运行,所以 - 我不这么认为。
  • 我可以在没有 C 或 D 驱动器的情况下在此代码中添加一些内容吗?如果我没有在 C 字母上写任何东西
  • 试试看会发生什么。

标签: oracle oracle11g oracleforms oraclereports oracle-fusion-middleware


【解决方案1】:

您可以在表单中创建这样的程序:

Procedure Pr_Print( i_document varchar2 ) Is
   pl_id           paramlist;
   pl_list         paramlist;
   my_rep_server   varchar2(500);
Begin
   pl_list := Get_Parameter_List('tmpdata');
   if not Id_Null(pl_list) then
     Destroy_Parameter_List(pl_list);
   end if;
   pl_list := Create_Parameter_List('tmpdata');

   set_report_object_property('RP2RRO', report_filename, i_document );
   set_report_object_property('RP2RRO', report_server, my_rep_server);
   add_parameter(pl_id, 'column1', text_parameter, :col1 );
   add_parameter(pl_id, 'column2', text_parameter, :col2 );

   rp2rro.rp2rro_run_product(reports, i_document, synchronous, runtime, 
                             filesystem, pl_id, null);
End;

其中rp2rro.rp2rro_run_product 是来自rp2rro.pll 的方法(Oracle 提供的二进制库模块), 假设您有 col1col2 文本字段。

并使用代码从按钮的WHEN-BUTTON-PRESSED 触发器调用它:

Pr_Print('myDocument');

附注库rp2rro.pll 也应该在应用服务器中安装和配置。由于Reports 11g 在应用程序上运行。服务器作为基于 Web 的应用程序。

【讨论】:

    【解决方案2】:

    我认为您可以在 WHEN-BUTTON-PRESSED 触发器中使用 WEB.SHOW_DOCUMENT(url,’_blank’);

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-07-05
      • 2021-03-18
      • 1970-01-01
      • 2015-12-10
      • 2021-07-27
      • 1970-01-01
      • 2013-04-07
      • 1970-01-01
      相关资源
      最近更新 更多