历史版本7 :LogDB 数据库的定时抽取 返回文档
编辑时间: 内容长度:图片数:目录数: 修改原因:

目录:

1. 版本编辑

报表服务器版本

10.0

2. 描述编辑

2.1 问题描述

FineReport 8.0 和 9.0 版本可以将 LogDB 数据库迁移到自己的数据库中进行管理和增强分析。但10.0版本不支持直接迁移。

这是由于 FineReport 10.0 采用了帆软全新开发的 Swift 引擎,以便更好的记录分析 LogDB 数据库的性能,但是目前 Swift 引擎未完善对其他数据库的支撑。所以面临这样的现状:

  • FineReport 10.0的 LogDB 数据库无法直接迁移

  • 直连内置的 LogDB 数据库进行增强分析,有 SQL 语句的限制,有些 SQL 写法不支持。

2.2 解决方案

用户可以通过定时调度的定时填报任务,来实现和 LogDB 数据库迁移一样的效果。

3. 示例编辑

3.1 获取 LogDB 数据库数据

点击服务器>定义数据连接,新增一个 JDBC 数据连接,设置信息如下表所示:

选项内容
数据库Others
驱动器com.fr.swift.jdbc.Driver
URLjdbc:swift:emb://default(Mac、Windows、Linux通用)
用户名和密码

设计器设置页面如下图所示:

333.png

3.2 建立本地数据库

3.2.1 新建表结构

对照 LogDB 数据库的表结构,在自己的数据库建立对应的表结构,表结构请参见:报表日志 LogDB 数据库(2.3节)

本文仅示例在本地 MySQL 数据库下fine_record_execute表的建立,如下图所示:

image.png


3.2.2 数据连接本地数据库

在设计器中建立数据连接,连到这个迁移数据库,如下图所示:

注:不同数据库对应的连接属性值请参照数据连接支持范围

1568009124193656.png

3.3 建立填报模板

3.3.1 模板设计

查询内置 LogDB 数据库中的fine_record_execute表数据,并新建如下图所示的报表:

32.png


3.3.2 调整字段的展示值

用户可根据自己的需求,调整各个字段的展示值,下文仅对time字段进行调整

如下图所示,time字段保存的不是标准日期格式。

image.png


time字段条件属性设置新值,值为TODATE($$$),条件是1=1,保证永远执行,如下图所示:

22.png

3.3.3 设置填报属性

点击模板>报表填报属性,新增内置SQL,将单元格与迁移数据库的字段绑定,如下图所示:

注:请勿勾选「未修改不更新」按钮,否则无法填报数据到数据库。

55.png

3.4 建立定时任务

点击服务器>报表平台管理,使用管理账号登录数据决策系统,点击管理系统>定时调度,新建LogDB定时抽取任务

image.png

执行频率根据用户需求自行定义,如下图所示:

image.png

选择 3.3 节制作的填报模板,类型选择填报,如下图所示:

image.png

至此,LogDB 数据库的定时抽取设置就完成啦。