反馈已提交

网络繁忙

当前为10.0版本文档,只有最新版本的文档支持在线编辑修改,如果想创建/编辑文档,请移步至 最新版帮助文档

打印模板与预览模板不同

  • 文档创建者:文档助手1
  • 历史版本:7
  • 最近更新:Leo.Tsai 于 2021-09-29
  • 1. 概述

    1.1 应用场景

    用户系统中使用 iframe 嵌入报表,浏览器端预览看到的样式跟实际打印出来的样式不一致。例如:

    用户系统显示报表的 iframe 大小固定,无法完全显示 A4 纸张大小的模板,因此在显示报表的时候进行了分页处理,如每页显示 10 条数据。

    如果直接将这个显示结果打印到 A4 纸上,每页纸上只显示 10 条数据,下面全是空白的,不美观并且浪费纸张,所以希望打印的时候按正常页面打印。

    1.2 解决思路

    解决方案:做两张模板,一张对应查看的模板,另一张对应打印的模板。

    进行打印时,通过 JS 调用 FR 的打印方法,将第二张模板打印出来即可。

    2. 示例

    例如以下 HTML 文件的代码,其中触发打印的代码里的模板跟 iframe 嵌入代码里的模板不一样,也就是做了两个,展示是一个,打印是一个,互不影响。

    <html>
    <head>
    <script type="text/javascript" src="/webroot/decision/view/report?op=emb&resource=finereport.js"></script>
    <link rel="stylesheet" type="text/css" href="/webroot/decision/view/report?op=emb&resource=finereport.css"/>
    <script type="text/javascript">
    function doFRPrint(){  //点击打印时触发
    var reportURL="/webroot/decision/view/report?reportlet=report_print.cpt"; //打印模板路径,与BS查看的效果不同
            FR.doURLFlashPrint(reportURL);   //调用FR打印方法
    }
    </script>
    </head>
    <body>
    <div id="toolbar">
    <button type="button" onclick=doFRPrint()>打印</button>
    </div>
    <iframe id="reportFrame" src="/webroot/decision/view/report?reportlet=report.cpt&__showtoolbar__=false" width=100% height=80%></iframe>
    </body>
    </html>

    注1:这个代码只是示例,可以改下里面的模板路径,保存为HTML文件使用。

    注2:移动端不支持各种打印和导出方式。

    附件列表


    主题: 报表专题
    已经是第一篇
    已经是最后一篇
    • 有帮助
    • 没帮助
    • 只是浏览

    售前咨询电话

    400-811-8890转1

    在线技术支持

    请前往「服务平台」,选择「在线支持」

    热线电话:400-811-8890转2

    总裁办24H投诉

    热线电话:173-1278-1526