统计图表FineReport教程:[15]行式报表
下面我们通过统计图表FineReport来介绍几个在行式报表下的典型应用示例。
工具/原料
统计图表FineReport7.1.1
大小:148.2M 适用平台:windows/linux
添加预警,间隔背景色-条件
1、问题描述在满足一定条件下改变单元格的格式或者显示成不同的值。如运货费大于100元就红色预警,单元格背景色间隔显示等。
![统计图表FineReport教程:[15]行式报表](https://exp-picture.cdn.bcebos.com/d9e638334884cde3a911a65df07f860e7d754291.jpg)
4、红色预警右击运货费数据列单元格,选择条件属性,添加一个条件属性,选择要改变的属性为前景色。当满足条件currentValue>100,当前运货费大于100的单元格前景色修改为红色。条件属性的作用是对满足条件的数据进行高亮显示如加上背景色等,从而突出显示异常数据,其中新值属性会改变单元格实际值
![统计图表FineReport教程:[15]行式报表](https://exp-picture.cdn.bcebos.com/732a12e265e7340f9445e49035b9763e20c2b491.jpg)
2、解决方案方案一:直接通过SQL语句取出满足条件的的数据,如修改数据集SQL语句为:SELECT * FROM 订单 where 是否已付 = 'TRUE',查看详细SQL语法。方案二:通过数据列过滤来解决,本节详细介绍该方案的用法。
3、实现步骤打开报表打开报表%FR_HOME%\WebReport\WEB-INF\reportlets\doc\Primary\DetailReport\Details_3.cpt
4、设置过滤选中订单ID数据列单元格,点击过滤按钮或者双击单元格,选择过滤标签,进入过滤设置对话框,设置过滤条件是否已付等于'true',如下图:注:由于单元格的计算顺序,过滤条件需要设置在单元格的父格上,如这里的订单ID,先取出已付的订单号,而其子格会自动继承父格条件,将父格子作为过滤条件。
![统计图表FineReport教程:[15]行式报表](https://exp-picture.cdn.bcebos.com/b1454a1bd10ff2260da4c1bd9c99e92abbb8a491.jpg)
2、解决方案方案一:直接通过SQL语句进行排序,如修改数据集SQL语句为:SELECT * FROM 订单 order by 运货费 desc。方案二:通过设置数据列的高级属性来实现排序效果,本节详细介绍该方案的用法。
3、实现步骤打开报表打开报表%FR_HOME%\WebReport\WEB-INF\reportlets\doc\Primary\DetailReport\Details_4.cpt
4、排序设置选中订单ID数据列单元格,点击高级按钮或者双击单元格,选择高级标签,出现高级设置对话框,在排列顺序中选择降序,公式为运货费。如下图所示注:由于单元格的计算顺序,高级排序需要设置在单元格的父格上,如这里的订单ID,在取订单ID时就根据运货费字段的值进行降序排列。
![统计图表FineReport教程:[15]行式报表](https://exp-picture.cdn.bcebos.com/994f412043715fdb2e1e4989468920c5270f8c91.jpg)
2、解决方案通过设置数据列的高级属性中的结果集筛选来让其只显示N个数据。
3、实现步骤打开报表取某一范围的数据往往与排序结合使用,如取运货费最大的10条数据,则先使订单记录按照运货费降序排列,然后取前10条便可。打开报表%FR_HOME%\WebReport\WEB-INF\reportlets\doc\Primary\DetailReport\Details_5.cpt
4、设置前N个选中订单ID数据列单元格,点击高级按钮或者双击单元格,选择高级标签,出现高级设置对话框,在结果集筛选中选择前N个,N设为10,即显示前10条数据,如下图所示注:由于单元格的计算顺序,结果集筛选需要设置在单元格的父格上,如这里的订单ID,直接取得前10条订单ID。
![统计图表FineReport教程:[15]行式报表](https://exp-picture.cdn.bcebos.com/95bd4e8c9bcec7f8a149ad6e034ce54a2e27fb91.jpg)