如何将交互式报告下载为Word(.doc)文件?

时间:2017-08-09 19:23:50

标签: database oracle oracle-apex-5.1

我是Oracle Apex 5.1的新手,我被要求实现一个按钮,当用户点击该按钮时,用户可以获取(下载)交互式报告的.doc文件。

我注意到互动报告为您提供了以.pdf.xls等方式下载的选项,但我需要将其作为Word (.doc)文件。

此外,文件必须采用特定格式(带有标题,缩进,字体等),这是我在Word文件中给出的(作为模板)。

任何帮助都将不胜感激。

其他信息:我能够在NotePad ++中打开模板(.doc)文件并获取它的<html>版本,因此我可以在NotePad ++和Word中编辑它

2 个答案:

答案 0 :(得分:1)

实际上最好的一个是APEX OFFICE PRINT(AOP),但不是免费许可证。

否则你可以检查这个解决方案

How do we export a ms-word (or rtf) document (from a web browser) to generated by pl/sql?

答案 1 :(得分:0)

我最终在此页面中找到了信息:http://davidsgale.com/apex-how-to-download-a-file/我写了这段代码:

declare
l_clob clob;

begin
l_clob := null;

sys.htp.init;
sys.owa_util.mime_header('application/vnd.ms-word', FALSE,'utf-8');
sys.htp.p('Content-length: ' || sys.dbms_lob.getlength( l_clob ));
sys.htp.p('Content-Disposition: inline; filename="test_file.doc"' );
sys.owa_util.http_header_close;

sys.htp.p(SET_DOC_HEADER);
sys.htp.p(SET_TABLE_HEADER);
sys.htp.p(ADD_TABLE_ENTRY("arguments"));
sys.htp.p(SET_TABLE_FOOTER);

sys.wpg_docload.download_file(l_clob);
apex_application.stop_apex_engine;

exception when others then
--sys.htp.prn('error: '||sqlerrm);
apex_application.stop_apex_engine;
end;

它可以工作,但我必须在SQL Workshop中创建函数,因为在html中写一个表真的很长。