历史版本20 :填报修改fine_conf_entity 返回文档
编辑时间: 内容长度:图片数:目录数: 修改原因:

目录:

1. 概述编辑

1.1 版本

报表服务器版本
11.0

1.2 应用场景

平台中的大部分的配置项都存储在 FineDB 中的 FINE_CONF_ENTITY 表中。

部分配置项未提供前台配置界面,或无法通过 fine_conf_entity可视化配置 进行修改,只能通过修改 FINE_CONF_ENTITY 表的方式进行更改。

注1:修改 FineDB 文件,有可能造成不可修复的 BUG,因此非必要请勿修改 FineDB 文件。

注2:请优先使用前台配置界面或 fine_conf_entity可视化配置 方式修改配置项。

注3:FINE_CONF_ENTITY 表中部分配置项的值固定,不支持修改,即使成功进行了填报修改,也会按照原固定逻辑生效。

1.3 功能简介

本文通过一个简单的示例来介绍如何通过填报的方式修改 FINE_CONF_ENTITY 的表字段。

示例:

修改 FineDB 中 FINE_CONF_ENTITY 表中的「CustomConfig.printWidget」字段,将字段值改为「true」。

步骤:

1)备份平台配置。

2)连接 FineDB 数据库,用于获取需要修改的 FINE_CONF_ENTITY 表。

3)新建一张填报模板,用于填报修改 FINE_CONF_ENTITY 的表字段。

4)修改表字段,并提交入库到 FineDB 中。

5)重启工程。

2. 备份平台配置编辑

注:若用户无法登录数据决策系统,可前往工程%FR _HOME%/webapps/webroot/WEB-INF/embed文件夹下,手动备份 finedb 文件。

建议在修改 FINE_CONF_ENTITY 的表字段前,通过手动或自动的方式备份平台配置项,备份方式请参考:备份还原 。

以手动备份平台配置为例,管理员登录数据决策系统,在「管理系统>智能运维>备份还原>平台配置」中选中手动备份。

默认备份路径为:../backup,备份文件储存在工程的 %FR_HOME%/webapps/webroot/backup 文件夹下,如下图所示:

3. 新建数据连接编辑

3.1 获取 FineDB 数据库信息

管理员登录数据决策系统,点击「管理系统>系统管理>常规」。

  • 若外接数据库显示「待配置」,则 FineDB 数据库信息可参见 FineDB 数据库简介

  • 若外接数据库显示「已配置」,点击即可查看外接 FineDB 数据库的信息。

3.2 连接 FineDB 数据库

新建一个数据连接,数据连接名称为 FineDB,数据库相关配置信息可根据 3.1 节获取。如下图所示:

注1:「内置 FineDB 数据库」为HSQL数据库,使用时会建立内存数据库,数据量大时会占用大量内存

        因此非必要请勿在 FineReport 工程中创建「内置 FineDB 数据库」的数据连接。

注2:本文仅简介设计器连接内置 FineDB 数据库的方式,平台连接方式请参见文档: [平台] HSQL 数据连接 。

具体连接信息如下表:

设置项
数据库others
驱动器com.fr.third.org.hsqldb.jdbcDriver
URL

jdbc:hsqldb:file://${ENV_HOME}/embed/finedb/db

注:Windows/Linux/Mac 通用

用户名sa
密码无需输入

注:服务器添加 FineDB 数据连接后,务必控制 数据连接使用权限,否则存在被越权访问并修改配置数据库的风险。

4. 新建填报模板编辑

新建一张填报模板,用于填报修改 FINE_CONF_ENTITY 的表字段

4.1 数据准备

新建数据查询 ds1,选择数据连接为 FineDB,输入 SQL 语句:SELECT * FROM PUBLIC.FINE_CONF_ENTITY WHERE ID ='CustomConfig.printWidget',获取需要修改的表字段。如下图所示:

4.2 设计报表

1)设置主体内容

新建一张普通报表,设置 A2~B2 单元格纵向扩展,B2 单元格的左父格为 A2 单元格。模板样式如下图所示:

2)设置填报控件

由于需要填报修改CustomConfig.printWidget字段,因此需要设置 B2 单元格为文本控件。如下图所示:

4.3 设置填报属性

点击菜单栏「模板>报表填报属性>提交」,新增「内置SQL」。

1)选择数据库为「FineDB」,表为「FINE_CONF_ENTITY」。

2)将单元格与数据库表中的数据列进行绑定,并选择「ID」作为主键。如下图所示:

5. 修改表字段编辑

1)点击「保存」按钮,保存报表。点击「下拉框」,选择「填报预览」查看报表。

2)将CustomConfig.printWidget字段值由「false」修改为「true」。

点击「提交」,弹窗提示「成功」后,修改后的数据已经入库 FineDB。如下图所示:

3)填报提交成功后,重启工程,配置生效。

重启步骤请参见:关闭或重启FineReport工程 。

6. 效果预览编辑

在数据查询 ds1 中,点击「预览」,FINE_CONF_ENTITY 表中CustomConfig.printWidget字段值已修改为「true。如下图所示:

7. 注意事项编辑

7.1 还原平台配置

若用户在修改字段值后未出现预期效果,想要还原平台配置,可登录数据决策系统对本文第二节的备份文件进行还原,详情请参考:还原

7.2 修改后无法登录数据决策系统

注:如果用户在修改表字段前无法登录数据决策系统,使用以下步骤重置平台配置无效。

如果出现在修改 FINE_CONF_ENTITY 表字段前能够正常登录数据决策系统,修改后无法登录或无法填报预览模板的情况,可参考以下步骤重置平台配置:

1)根据第二节设置的备份路径,找到备份 finedb 文件,并替换现有 finedb 文件,即可还原平台配置。

以手动备份为例,在%FR_HOME%/webapps/webroot/backup/config/manual下,根据文件夹的名字(备份时间),找到备份的内容,将备份的 config.zip 解压得到的 finedb,替换%FR _HOME%/webapps/webroot/WEB-INF/embed下的 finedb 文件。

2)重启工程。

7.3 修改后

若用户在修改字段后 可修改后重启,没有生效 或未出现预期结果

排查以下步骤:

可能有以下原因:

1)部分配置项不支持修改,请参考文档确认是否支持修改

确定该字段是否支持修改

不支持通过该方式修改

仅支持通过该

支持修改的字段