第一个大标题:感谢1012号和1015号技术支持解决了几个报表查询条件难题,分享下
---------------------------------------------------------------------------------------------------
一、查询条件的级联(感谢1012号技术支持)
二、自定义单元格数据的查询筛选(感谢1015号技术支持)
下面附上说明文字和截图:
(一)有时候报表有多个查询条件,但是又要做限制。比如:有四个下拉框查询条件,
必须选第一个查询条件才能让第二、三...个下拉框出数据,这就需要将第一个下拉框
设置为不能为空:
然后在第二、三...个下拉框对应的数据集中接收第一个下拉框的参数值:
;
这样就可以实现“必须选第一个查询条件才能让第二、三...个下拉框出数据”这种效果了。
----------------------------------------------------可爱的分割线--------------------------------------
(二)自定义单元格数据的查询筛选:
【解释】:就是想通过查询条件来筛选某个单元格的值,我这里是筛选合格和不合格
的数据行,因为合格/不合格是没有数据集的,我的合格不合格的显示是根据报表中
两个单元格的数值比较。 | 报表中的数据行截图↓
1.首先定义下拉框的数据字典:
2.添加模板参数
3.我这里合格/不合格的显示是用公式判断的
(这个单元格是P3)
4.这个单元格(P3)需要在形态属性里添加一个数据字典
5.再给P3单元格添加两个条件就行了。条件属性是选行高,OK
第一个条件是当前值不等于参数(下拉框的控件名):
;
第二个条件是下拉框的参数不为空
-----------------------------------------------------更新线-------------------------------------------------
2017.09.21更新:(感谢1012号技术支持)
三、、、
后来那个合格/不合格我把它合并了,假如现在有3行数据,第一行为合格,第二行不合格,
第三行合格,如果有一个不合格就判定为不合格,P3单元格不再分组显示,而是合并成
一个单元格数据。方法如下:
将原来P3单元格中的公式换成 if(len(Q3[!0]{Q3<O3})>0,0,1) ,然后将父格改成 “无” ,
这样就OK了。
~~~~~~~~~~~~~~~~~~~~后来重新研究了下,公式写成 if(min(Q3)<O3,0,1) 是一样的。
[公式说明]:
1、获取Q3单元格所有满足小于“合格分”的数据(合格分单元格为O3),如果有,则
显示为不合格,没有就是合格;
2、公式中Q3[!0]{Q3<O3} 这个就是获取Q3中小于合格分的数据。
---------------------------------------------------------------------------------------------------------
2017.09.26更新
如果想在导出报表的时候动态修改导出文件的名字,可以在url里面传一个参数过来,
然后在模板web属性里面加个EL表达式 ${...} 截图如下
tips:自定义导出功能可以参考:http://help.finereport.com/doc-view-1822.html
---------------------------------------------------分割线----------------------------------------------
感谢帆软技术支持,不得不说实力过硬。jishu so hard
编辑于 2017-9-26 10:39
编辑于 2017-9-26 10:43
编辑于 2017-10-10 14:53
|