1. 概述
1.1 应用场景
一些报表中往往数字(产值、金额)占主要比重,其中不乏有这样的业务需求:查询面板可以通过比较符号,如大于号>或小于号<,定义无穷区间查询,效果如下图所示:
1.2 实现思路
比较符号和查询数值分别定义为参数,数据库查询语句中定义好参数表达式即可。
2. 示例
2.1 准备数据
新建普通报表,新建数据库查询数据集 ds1,SQL 语句为:
select * from 销量
where 1=1
${if(len(fh)=0,"",if(len(销量)=0,"","and 销量"+fh+"'"+销量+"'"))}
注1:SQL 语句中涉及 2 个参数fh和销量,fh用来设置比较符号,销量用来设置查询数值,后面都用来绑定各自的控件。
注2:该语句也实现了参数为空选全部的效果。
2.2 设计表格
如下图设计表格,将数据集中的字段拖入到对应单元格中。
2.3 设置控件
1)进入参数面板编辑界面,参数fh和销量分别绑定控件,fh设置为下拉框控件,销量设置为文本框控件,如下图所示:
2)选中下拉框控件,右边属性面板自定义控件的数据字典,如下图所示:
2.4 效果预览
1)PC 端
保存报表,点击分页预览,查询效果如下图所示:
2)移动端
3. 模板下载
已完成模板可参见:%FR_HOME%\webroot\WEB-INF\reportlets\doc\Parameter\MultiValue\自定义参数大小比较.cpt
点击下载模板:自定义参数大小比较.cpt