反馈已提交

网络繁忙

Web 页面集成简单示例

  • 文档创建者:文档助手1
  • 编辑次数:24次
  • 最近更新:Wendy123456 于 2021-09-22
  • 1. 概述

    1.1 问题描述

    报表是以表格、图表的形式来动态展示数据,进而用于统计分析。这样的数据表格和图表,用户在开发系统的时候也可以自己编程实现,但是工作量大且维护困难。

    用户往往选用现成的报表软件开发报表,最后将制作好的报表嵌入到自己的系统中,以节省项目开发周期。

    现在用户开发的系统基本上是基于 B/S 架构的浏览器/服务器模式,因此需要将制作好的报表嵌入到系统的某一个页面中,做为页面的一部分。

    下面将通过一个简单的示例介绍 Web 页面集成的方法:

    1.2 实现思路

    通过页面 iframe 集成方式,可以很好地把其他已经开发好的页面或者模板直接嵌入到 FineReport 的模板中,或者把 FineReport 模板嵌入到已有的 Web 页面中,只需要指定 iframe 的 src 属性即可:

    <iframe id="reportFrame" width="900" height="400" src="../../decision/view/report?viewlet=
    /doc/Primary/Parameter/Parameter.cpt"></iframe>

    注:此方法 iframe 的 src 会显示出完整的报表路径,尤其在有参数的情况下,可以使用 post 的方式向 iframe 提交请求,这样 src 里有不会出现具体的参数了。

    2. 示例

    2.1 页面集成

    1)以将报表嵌入到一个 HTML 页面中为例:

    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
    <html>
     <head>
      <title>FineReport Demo</title>
      <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
     </head>
     <body>
     <iframe id="reportFrame" width="900" height="400" src="../../decision/view/report?viewlet=/doc/Primary
     /Parameter/Parameter.cpt"></iframe>
     </body>
    </html>

    注1:如果 HTML 页面与集成的模板不在同一个服务器或同一工程下,src 需要指定绝对路径。

    注2:这里的 HTML 不是双击打开,而是要在工程下打开,否则无法使用相对路径。

    2)将该 HTML 文件命名为 Simple.html ,放到工程%FR_HOME%/webroot/page_demo路径下。

    2.2 效果预览

    已完成示例请参照:%FR_HOME%/webroot/page_demo/Simple.html,可以直接用设计器安装目录下的该 demo 进行演示。

    启动设计器,输入http://localhost:8075/webroot/help/page_demo/Simple.html,效果如下图所示:

    Snag_477224fa.png

    3. 注意事项

    若您希望自己系统页面中的按钮可以调用 FineReport 内置的 JS 方法(  如打印方法 ),那么需要加载 FineReport 的 JS 文件,而 FineReport 的 JS 采用的是 jQuery V1.9.1 框架。

    实际情况下,一个页面中可能不仅仅只有报表部分,用户可能会加载其他版本的 jQuery,为避免 JS 冲突,我们建议将报表内容显示在 iframe 中,而不要显示在 div 中。

    需要调用 FineReport 内部的 JS 方法时,可以通过 iframe 获取报表再调用方法,具体可参考文档:JS 使用说明

    附件列表


    主题: 部署集成
    • 有帮助
    • 没帮助
    • 只是浏览

    售前咨询电话

    400-811-8890转1

    在线技术支持

    在线QQ:800049425

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

    总裁办24H投诉

    热线电话:173-1278-1526

    文 档反 馈

    鼠标选中内容,快速反馈问题

    鼠标选中存在疑惑的内容,即可快速反馈问题,我们将会跟进处理。

    不再提示

    10s后关闭