FineReport 集成到 FineBI

  • 文档创建者:doreen0813
  • 编辑次数:35次
  • 最近更新:Wendy123456 于 2021-01-22
  • 1. 概述

    1.1 应用场景

    在实际使用过程中存在需要将 FineReport 工程集成到 FineBI 数据决策系统上使用的情况。

    本文将介绍将 FineReport 集成到 FineBI 的步骤。

    1.2 功能简介

    • 将 Finereport 集成到 FineBI ,可以将这两个软件合并成一个整体的系统,应用服务只需维护一套。

    • Finereport 集成到 FineBI 后,统一 FineBI 和 Finereport 的用户、权限体系、门户以及管理系统,用户登录时只需要登录一个平台。

    具体流程如下图所示:

    1607047995625579.png

    2. 准备工作

    2.1 服务器配置推荐

    参考 FineBI服务器配置推荐 ,如内存消耗大可以在 FineBI 需求内存的基础上增加。

    2.2 版本适配

    在实际操作前,请确保 FineBI 和 FineReport 版本兼容。版本兼容情况详情参见:FineBI 与 FineReport 版本适配说明

    注:FineBI4.1 暂时不能升级至 5.0,待后续更新,目前仅能新安装 5.0 版本。  

    2.3 确定工程版本

    2.3.1 确定 FineBI 版本

    管理员登录数据决策系统,选择「管理系统>注册管理」。查看 BI 模块版本,如下图所示:

    1606706322141878.png

    2.3.2 确定 FineReport 版本

    打开 FineReport 设计器,点击「帮助>更新升级」,查看当前 FineReport 版本,如下图所示:

    1606706960516106.png

    如果实际安装的 FineReport 版本与 FineBI 版本不一致需要升级,详情参见:FineReport 升级指南 、升级指南索引 

    注:不仅需要大版本匹配,小版本 JAR 日期也需要一致,否则可能存在问题。

    2.4 确定工程是否配置外接数据库

    若在集成前,FineReport 或者 FineBI 配置了 配置外接数据库 ,那么需要首先将 外接数据库回迁内置数据库 ,在集成结束后再迁回外置数据库。

    2.5 确定工程 lic 一致

    修改 FineReport 的 license 和 FineBI 一致再集成,或在集成前先清空 FineReport 、FineBI 的 license ,等集成后再添加 lic 。查看 lic 步骤如下图所示:

    1606707596839647.png

    3. 操作步骤

    3.1 不同情况下具体步骤

    如下表所示:

    保留配置FineBIFineReport具体步骤
    FineBI 配置
    -
    -
    参考本文 3.2 节步骤
    FineReport 配置没有用户做的仪表板-
    参考本文 3.2 、3.3 节步骤
    存在用户做的仪表板参考本文 3.2 节、3.3 节、3.4 节步骤

    需要注意以下两点:

    • 集成只能保留两个工程其中一个的配置。若保留 FineReport 的配置,则 FineBI 的配置全部丢失,包括仪表板配置。

    • 若需要保留 FineReport 的配置,同时保留 FineBI 的仪表板和数据表,需要在集成步骤开始前,将需要保留的 仪表板挂出,通过 资源迁移 先导出仪表板和数据集,具体请参见本文 3.4 节。

    • FineReport 集成 FineBI 后,数据决策系统默认使用 FineBI 的端口号。例如在集成前 FineReport 数据决策系统端口为 8075,FineBI 数据决策系统端口号为 37799 ,则在集成后工程默认使用 37799。

    3.2 必须操作

    3.2.1 拷贝主工程 JAR 包

    确保 FineBI 和 FineReport 的 JAR 包同步之后,将 FineReport 安装目录%FR_HOME%\webroot\WEB-INF\lib下的所有 JAR 包拷贝至 FineBI 工程目录的%FineBI%\webroot\WEB-INF\lib文件夹中「若有相同的 JAR 包,保留原先 FineBI 里的不替换」,如下图中所示:

    1577172048677306.png

    注:若原 FineReport 工程的 %FR_HOME%\webroot\WEB-INF\lib 文件下存在驱动,集成的时候需要判断集成后使用的数据连接需要哪种驱动,从而保留对应版本。

    3.2.2 拷贝插件包

    将 FineReport 安装目录%FR_HOME%\webroot\WEB-INF\plugins下的所有文件拷贝至 FineBI 目录%FineBI%\webroot\WEB-INF\plugins下,若有相同的文件,保留 BI 的不替换。如下图所示:

    1577172319131138.png

    3.2.3 拷贝 FineReport 的 phantomjs 到 FineBI 对应目录

    注:2020-04-26 及之后的 FineReport 版本不需要此步骤。

    将 FineReport 目录%FR_HOME%\webroot\WEB-INF\assist下拷贝文件夹 phantomjs 至 FineBI 对应目录下,若不进行此操作,使用到 FineReport 的图表导出和定时调度中含有图表时,图表会无法显示。如下图所示:

    1577173277952828.png

    3.3 选择性操作

    以下操作需要根据客户的需求,保存 FineReport 还是 FineBI 的 embed、logs、resources 文件夹来进行操作。文件夹详细介绍请查看 FineBI 工程目录结构 

    3.3.1 embed文件夹

    embed 文件夹里面存储了数据决策系统中平台配置信息,包含内置数据库 FineDB 、模板定时任务信息等。

    注:管理系统界面下的所有配置信息都保留在 embed 中,替换 FineReport 的 embed 时全部替换为 FineReport 的数据,不存在只替换某个子目录如「用户管理」为 FineReport 的数据。

    将 FineReport 安装目录%FR_HOME%\webroot\WEB-INF 下的 embed 文件夹拷贝至 FineBI 目录%FineBI%\webroot\WEB-INF内替换 FineBI 原先的文件夹。若想保留 FineBI 的设置信息,则这一步可不操作,即不替换 embed 文件夹。

    1577184713269432.png

    3.3.2 logs 文件

    logs 文件夹是 FineBI 日志监控开启之后保存日志的内置数据库。

    若想保留 FineReport 系统中的日志数据,则需要将 FineReport 安装目录%FR_HOME%\webroot下的 logs 文件夹拷贝至 FineBI 目录%FineBI%\webroot内替换原先的文件夹。若想保留 FineBI 的日志信息,则这一步可不操作,即不替换 logs 文件夹。

    3.3.3 resources 文件

    resources 文件夹保存了报表信息、配置信息等。

    若想要在集成后保留原先 FineReport 中的此类数据,可参考 FineBI 工程目录结构 查看配置文件详细介绍,将想要保存的配置文件从 FineReport 安装目录%FR_HOME%\webroot\WEB-INF\resources中拷贝至 FineBI 目录%FineBI%\webroot\WEB-INF\resources内替换即可。

    3.4 既要保留 FineBI 的表和仪表板,又保留 FineReport 配置

    1)若需要保留  FineReport 的配置,同时保留 FineBI 的仪表板和数据表,可以在集成前,将需要保留的 仪表板挂出,通过 资源迁移 先导出仪表板和数据集。

    2)参考本文步骤集成后,删除 %FineBI%\webroot\WEB-INF\dashboards 文件夹,如下图所示:

    1597910370303246.png

    3)建立与原 FineBI 中完全一致的数据连接,再进行 资源导入  

    3.5 效果展示

    具体效果如下所述:

    • 若保留 FineBI 的配置,FineBI 工程没有变化。

    • 若保留 FineReport 的配置,平台「目录」节点上的模板为 FineReport 的模板,管理系统中的目录管理、用户管理、权限配置、定时调度等,为 FineReport 的配置。

    示例:集成前 FineReport 工程有个名为 a 的定时调度任务,FineBI 工程有个名为 b 的定时调度任务,若保留 FineReport 配置,集成后,b 被 a 覆盖。

    4. FineBI 中使用 FineReport 模板

    因为 FineReport 不为空,原先在 FineReport 中已制作的报表在集成到 FineBI 中显示给出详细说明。

    1)FineReport 的模板路径%FR_HOME%\webroot\WEB-INF\reportlets中将需要展示的报表拷贝至 FineBI 工程目录%FineBI%\webroot\WEB-INF\reportlets中。拷贝 FineReport 的报表 GettingStarted.cpt 至 FineBI 中,如下图所示:

    222

    2)需要在 FineBI 中添加 FineReport 已制作报表使用到的数据连接,且数据连接名称要相同,可参考 配置数据连接 

    3)登录 FineBI 数据决策系统,在「管理系统>目录管理」中选择添加模板,如下图所示:

    222

    4)选择之前拷贝过去的报表模板,如下图所示:

    222

    5)点击下一步设置模板显示的名称、描述等,点击确定完成设置。如下图所示:

    222

    6)点击确定后刷新页面,即可在目录节点看到添加的 FineReport 报表。如下图所示:

    222

    注:在集成时,FineReport 与 FineBI 的 License 需统一,统一使用 FineBI 的 license 。

    5. 集成后将 FR 从 BI 中拆分出,形成单独的 FR 工程

    若用户在将 FineReport 集成到 FineBI 后需要将 FineReport 工程重新拆分出来单独使用,则需要进行如下操作:

    5.1 重新部署

    拷贝当前工程目录下的 webroot 文件,按照 Web 服务器部署 在新的服务器中进行重新部署。

    5.2 删除 BI 目录节点

    部署完成后启动工程,登录数据决策系统,然后删除目录管理中 BI 相关的目录节点即可。

    注1:若不需要显示「数据准备」、「仪表板」节点,进入「管理系统>用户管理>平台用户管理」,将所有用户设置为 BI 查看用户即可。

    注2:若需要进行重新授权注册,请参见:注册管理 

    附件列表


    主题: 部署集成
    • 有帮助
    • 没帮助
    • 只是浏览
    • 评价文档,奖励 1 ~ 100 随机 F 豆!