FineReport

个人总结的对于finereport这个软件的一些使用心得记录

第一点 — 连接数据库

  • 1、定义数据连接

finereport mysql乱码 finereport怎么连接数据库_控件


  • 2、选择需要连接的数据库


finereport mysql乱码 finereport怎么连接数据库_FineReport_02



finereport mysql乱码 finereport怎么连接数据库_数据_03


  • 3、 测试连接成功后就可使用


finereport mysql乱码 finereport怎么连接数据库_FineReport_04



第二点 — 报表的样式

数据列显示
  • 1、基本

finereport mysql乱码 finereport怎么连接数据库_finereport mysql乱码_05


  • 其中,特殊的是高级分组,其又分为条件分组和公式分组,点击自定义如下:


finereport mysql乱码 finereport怎么连接数据库_控件_06


  • 2、过滤
    即对数据列数据进行筛选,可以通过自己设定条件进行过滤,如下:过滤出数据列projectStatusCode的值大于6的数据


finereport mysql乱码 finereport怎么连接数据库_数据_07



  • 3、高级

finereport mysql乱码 finereport怎么连接数据库_数据_08




注:由于单元格的计算顺序,高级排序需要设置在单元格的父格上

第三点 — 图表设计

  • 1、选择想要图的类型
  • finereport mysql乱码 finereport怎么连接数据库_finereport mysql乱码_09

  • 2、数据导入
  • finereport mysql乱码 finereport怎么连接数据库_数据_10

  • 数据来源有两种:数据集数数据,如下图
  • finereport mysql乱码 finereport怎么连接数据库_finereport mysql乱码_11

  • 单元格数据:是可以自定义,也可以和报表块中的单元格如A3,D2等进行关联,获取其的数据,进行显示
  • 3、图的样式
  • finereport mysql乱码 finereport怎么连接数据库_数据_12

  • 可以对图中的具体的一些显示进行设计,如标题,可以自定义,图例的位置和大小设计,标签的样式选择,及数据显示时的坐标轴数值显示(有些图有,有些图无)
  • ** 4、特效(一般不常用)**
  • finereport mysql乱码 finereport怎么连接数据库_sql_13

第四点 — SQL语句书写

这一点其实是对于连接数据库之后具体要在报表中显示什么数据的操作,可以说是只要你写sql的能力可以,这一点其实,没事,主要就是考察写sql的能力。和下一点有点关联。
例子用的是帆软自带的demo

  • 1、进行数据库查询


finereport mysql乱码 finereport怎么连接数据库_finereport mysql乱码_14



如图,先选择具体的数据库,再在右边进行sql语句的书写,如图中,查出年月,负债,资产,权益等字段的信息。



finereport mysql乱码 finereport怎么连接数据库_sql_15


具体传参下点再讲

  • 这个sql大家都知道如果数据量过多,会导致查询速度慢,况且一般报表数据量大是比较正常的,我们怎么让数据能更加高效的显示,加快查询数据,在这里,速度是需要重视的一点。我在这过程中遇见过,我的做法是:首先,你要对于设计文档需要的数据做到熟悉,对于sql查出来的数据进行去冗余,对于不需要的数据尽量的剔除掉,其实,在你已经写出来的sql上进行查询数据优化,一般都是多表关联查询的,我比较常用的是,nner join,不太了解的可以去看看我的SQL加深篇,写的不是很详细,哈哈哈。最后,就是一个帆软这个软件的浏览器显示的问题啦,这个我目前也不清楚怎么办!!!

第五点 — 参数联动,查询

  • 1、参数查询
    以上说了很多废话,到了最重要的一点了,关于这个帆软相比于sql的传参,它的书写规范如下:
  • finereport mysql乱码 finereport怎么连接数据库_sql_16

  • 上面的参数的名字其实是你的具体报表的控件名,把这里的参数和你浏览器显示的控件里的值进行绑定,就可以动态的查询出来数据了。如下图:
  • finereport mysql乱码 finereport怎么连接数据库_数据_17


  • finereport mysql乱码 finereport怎么连接数据库_sql_18

  • 你可以选择具体的年份进行查询,这样sql根据你这个控件里的值进行数据库的查询了,进行动态的浏览器数据展示了。
  • 2、参数联动
    即指后面一个参数下拉框的值会根据前一个参数的值的改变而改变,前一个参数作为后一个参数查询的重要依据
    如图:有三个参数 地区、城市、客户


finereport mysql乱码 finereport怎么连接数据库_数据_19



  • 第一个参数,直接在改控件的属性界面的数据字典里进行设置查询,比较简单


finereport mysql乱码 finereport怎么连接数据库_FineReport_20


  • 第二个参数,需要根据第一个参数来具体查询,
    这就涉及到一个传参的问题,需要把前一个具体选中的数值,传进第二个参数,再把第二个参数查出来的数据进行显示,所以这里需要写sql,如图:

finereport mysql乱码 finereport怎么连接数据库_数据_21



  • 3、第三参数和第二个差不多,就是需要传递二个参数,如下:

finereport mysql乱码 finereport怎么连接数据库_FineReport_22



最后数据字典进行展示



finereport mysql乱码 finereport怎么连接数据库_FineReport_23


第六点 — 大屏展示

FineReport 决策报表采用了画布式操作界面,专为大屏和移动端而生。
前面写的都是一些设计方面的技术问题,这一点是写设计出来的报表其实还需要考虑页面显示的输出分辨率的问题,显卡支持,数据源(是否填报)、数据更新周期等。

注:写的不是很详细,只是把我认为设计报表比较重要的几点简要概述了一下,没有看懂的小伙伴可以移步去FineReport的官方网站查看具体的帮助文档和向客服咨询(PS:网址:https://help.finereport.com/)