[]
查询条件的默认方式是文本框,即需要用户手动输入参数值才能进行查询。而在实际业务中,用户往往不太清楚具体可以输入哪些值或者记不清楚参数值的全名,因此我们就需要用到参数的下拉列表功能。
下拉列表的实现效果如下图所示,用户可以直接在下拉列表中选择一个选项来实现查询,无需再手动输入。
接下来就为您介绍实现这种下拉列表式查询参数的具体步骤。
为了实现下拉列表,需要先定义一个数据集如“产品类别”。选择数据源WynDemoData新建内嵌数据集。
配置数据集名称为“ 产品类别 ”,查询语句为: select distinct 类别名称 from 销售明细 。然后单击验证和确定保存数据集定义。
type=info
提示
您也可以省略“distinct”,使用
select类别名称from销售明细
。因为报表中,当数据集字段作为报表参数的可用数据时,会自动去重。
添加一个报表参数,将参数名称修改为“ Type ”,提示文本修改为“ 产品类别: ”,数据类型设置为字符串型。
在可用数据部分,从数据集名称下拉框中选择上面定义的数据集,在数据字段下拉框中选择“ 类别名称 ”,在标签字段下拉框中选择“ 类别名称 ”,并选择排序规则,如下图。
其中,数据字段的值将作为传给数据集 SQL 语句的实际参数值;标签字段的值则是显示在下拉列表框中的字符串。
这样设置了可用数据的查询参数,在报表查看页面的参数栏中,就会以下拉列表框的形式来显示,供用户选择。
添加内嵌数据集,在查询参数部分添加新的查询参数,然后设置参数值表达式为: {@Type} 。
在查询语句中输入带参数的SQL语句: select * from 销售明细 where 类别名称=@查询参数1 ,如下图。
设置完成后,单击验证和确定按钮,保存数据集的定义。
在数据集中开启多选,勾选多个字段,然后拖拽到设计区中。
可以看到下拉列表式的查询参数。只需从下拉框选择查询条件(输入关键字可自动检索),即可实现按类别查询产品信息,并且下拉列表中的数据按照首字母进行了排序。如下图。
type=info
提示
除了可以用数据集作为查询参数的可用数据,也可以手工添加可用数据项。详见报表参数。