天天看点

为数据无法直接应用于FineReport发愁?数据工厂插件助你一臂之力

作者:帆软软件

基于数据安全的考虑,很多企业往往不允许业务系统直接访问数据库;或者为了便于业务系统集成,企业通常会开放一系列的数据接口。

这些数据接口返回的一般都是JSON格式的数据,但问题是,这种格式的数据无法直接应用于FineReport中进行数据分析,这导致大量的数据无法产生价值,企业IT人员对此很苦恼。

针对此场景,「数据工厂」插件应运而生,它具有强大的数据格式转换能力,可以轻松解决类似问题!

下面跟着大师兄一起看一看吧!

1

插件介绍

「数据工厂」插件可对接网络爬虫、自主开发的数据中心、JSON、WebService等,并将这些数据转换成FineReport可用的数据类型。

同时,该插件具有高度扩展性,也可以通过二次开发来适应更复杂的场景。

2

使用流程

步骤一:

在安装数据工厂插件后,数据集管理面板会新增「数据工厂」选项。

为数据无法直接应用于FineReport发愁?数据工厂插件助你一臂之力

步骤二:

点击进入数据工厂主面板,用户可根据实际需要,完成主面板的配置。

为数据无法直接应用于FineReport发愁?数据工厂插件助你一臂之力

数据工厂主面板的主要功能有6个:①数据集名字;②装载器与解析器;③高级设置;④缓存功能;⑤参数面板;⑥预览按钮,下面让我们来详细看一下。

①数据集名字:在名字栏可以为数据集命名。

②装载器与解析器:装载器负责从数据源装载数据,解析器则负责将装载的数据转换成 FineReport 支持的数据模型。

插件内置了两种装载方式(Http、单参数)和三种解析方式(Json 、JS 解析器、原始数据)。

  1. 装载器:
  2. Http:通过配置相关请求(主要含url、type、charset、header4个字段),可以实现从 Web 端装载数据。( 比如 Json 服务等 )
  3. 单参数:可以实现将装载器界面的数据参数,经过计算后原样传给解析器,主要是供调试使用。( 比如 Json、XML 等结构化数据 )
  4. 解析器:
  5. Json:提供了不完整的JPATH语法,可以对结构化的 Json数据进行解析,生成 FineReport 支持的数据模型。
  6. JS解析器:通过JS脚本解析数据,生成 FineReport 支持的数据模型。
  7. 原始数据:原样返回数据,主要是供调试使用。

③高级设置:当内置的装载器和解析器无法满足用户需求时,可以使用高级设置功能,进行二次开发,进行功能扩展。

④缓存:实现将外部读取的数据暂存到缓存中,支持直接从缓存中取数,不通过接口取数,以提高数据读取的速度。该功能支持将数据缓存到本地磁盘或内存中,并可设置数据缓存的时长。

⑤参数面板:参数面板可自动识别装载器界面出现过的参数,用户也可手动添加新的参数作为请求参数。

⑥预览按钮:点击预览按钮,可以预览经转换后的数据。

步骤三:

在完成配置后,在FineReport设计器中,可看到模板数据集中新增的数据工厂数据集,该数据集可直接应用于报表制作。

为数据无法直接应用于FineReport发愁?数据工厂插件助你一臂之力

3

实际案例

看了上面的使用流程,你可能还是对“如何使用数据工厂插件”一头雾水,那么,下面大师兄就用一个实际案例带着大家一起实操一下。

案例需求:用数据工厂插件,将Json格式的帆软市场插件列表数据,转换成FineReport支持的数据格式。

(1)按照如图所示配置数据工厂主面板

本示例采用Http装载方式,实现从帆软市场 Web 端装载数据,在参数面板添加参数 searchKeyword=导出中心 ,以获取与“导出中心”相关的数据;对于返回的数据采用Json解析方式进行解析。

为数据无法直接应用于FineReport发愁?数据工厂插件助你一臂之力

(2)接口实际返回Json格式的数据如下(此处仅做对比说明,在实际插件使用过程中,不会出现该步骤)。

为数据无法直接应用于FineReport发愁?数据工厂插件助你一臂之力

(3)再点击预览按钮,即可看到取出的与“导出中心”相关的数据。

为数据无法直接应用于FineReport发愁?数据工厂插件助你一臂之力

看到这里,你是不是心动了呢?

为数据无法直接应用于FineReport发愁?数据工厂插件助你一臂之力

继续阅读