快捷搜索:  汽车  科技

finereport模板数据集(从FineReport看开放式引擎API)

finereport模板数据集(从FineReport看开放式引擎API)可以对报表对象的单元格属性、web属性、参数、页面设置等多个属性进行控制,可以自由控制单元格的显示样式、工具栏的按钮、参数面板的展示、参数的赋值等等。设置单元格属性及报表属性编辑设计器本身已经提供了数据库数据源、文本数据源、xml数据源等多种数据来源方式,同时还可以通过java程序自行生成数据来源,只需要实现TableData接口便可以了。输入输出报表在程序中新建一个报表对象同时也可以直接读取一个cpt模板来生成,经过处理的报表最终可以导出成多种形式,可以保存为程序网络报表在web端直接访问,也可以导出为excel、pdf、word、cpt等多种格式文件。

对于一款软件或产品,尤其是一些企业级应用的IT软件,是不可能满足所有需求的。尤其是针对业务化的产品需求,某些个性化的需求就要进行二次开发。二次开发需要API接口,无论是什么样的开发,开发人员都需要对开发的产品大内部结构有所了解。在应用广泛的企业报表领域,开发在所难免,下图展示了我在工作中开发的FineReport的内核示意图。

finereport模板数据集(从FineReport看开放式引擎API)(1)

这款类似于Excel的报表软件,成为设计器。在设计器中新建一个工作薄就是建了一个WorkBook,WorkBook相当于一个容器,里面可以放任意个WorkSheet,就相当于在设计器的一个工作薄中新建了多个sheet。每个WorkSheet是由任意个单元格CellElement组成,因此CellElement是一个模板的最小元素。获得WorkBook后,必须取得其中的某个WorkSheet才能对这个报表中的CellElement进行操作,这对于模板还是结果都是一样的,如果以模板为例,最基本的内核结构就是如下面这张图

finereport模板数据集(从FineReport看开放式引擎API)(2)

由图可有看出,对于这样的开发可以从以下几个功能点进行开发。

报表数据源

设计器本身已经提供了数据库数据源、文本数据源、xml数据源等多种数据来源方式,同时还可以通过java程序自行生成数据来源,只需要实现TableData接口便可以了。

输入输出报表

在程序中新建一个报表对象同时也可以直接读取一个cpt模板来生成,经过处理的报表最终可以导出成多种形式,可以保存为程序网络报表在web端直接访问,也可以导出为excel、pdf、word、cpt等多种格式文件。

设置单元格属性及报表属性编辑

可以对报表对象的单元格属性、web属性、参数、页面设置等多个属性进行控制,可以自由控制单元格的显示样式、工具栏的按钮、参数面板的展示、参数的赋值等等。

自定义填报

开放的填报api接口能够根据自己的需要来定义填报入库方式,通过填报接口,可以往数据库中保存用户操作日志、在填报成功与失败时进行各种处理等等。

开发的工作虽枯燥也有意思,闲来无事时也会开发一些有趣的应用,比如下图把天气集成到报表页面。

finereport模板数据集(从FineReport看开放式引擎API)(3)

猜您喜欢: