如何从oracle 11g打开PDF文件?

时间:2019-03-18 08:48:19

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

我正在将Oracle Database 11gR2与Oracle Forms 11gR2一起使用。我有保存在服务器计算机上的PDF文件。我创建了名称为“ HELP”的手册PDF文件的按钮。现在我想要当用户单击本地计算机上的按钮,然后从服务器计算机上打开PDF文件。

我找到了以下代码:

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

此代码是否正确运行? Oracle Forms 11g

2 个答案:

答案 0 :(得分:0)

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

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');

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

答案 1 :(得分:0)

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