如何在ssrs报告参数中设置默认数字all值

时间:2019-06-11 16:24:07

标签: reporting-services ssrs-2008

我想将数字列的所有值显示为数字参数中的默认值。对于非数字/文本列,我使用了“全部”选择​​,它正在选择该列的所有值。但是选择“全部”或选择“%”或选择“%[0-9]%”会在数字列中给我错误。我不想使用“允许多个值”选项,任何人都可以帮助我。

我希望参数自行填充所有数值。

1 个答案:

答案 0 :(得分:2)

对没有多个值的数字参数执行此操作的一种方法是将所有参数值与-1合并,然后将其称为全选。

因此,如果您的参数(@numcolumn)值是这样的

  

1

     

2

     

3

然后您只需使用并集all附加一个-1

像这样。 (varchar(5)只是显示示例的选择。选择适合您需求的内容)

   select -1 as value
,'Select All' as value_name
    union all
     select mycolumn as value
,cast(mycolumn as varchar(5)) as value_name
 from mytable

所以现在您的@numcolumn参数列表将是这样

value   value_name
 -1     select All

 1       1

 2       2

 3       3

然后在数据集的where子句中,像这样设置参数值。

where ( @numcolumn = -1 or sometable.somecolumn = @numcolumn)

因此,如果您选择-1作为参数值,则查询将返回所有内容。否则它将根据参数中选择的值进行过滤。

要使参数选择看起来整洁。.将@numcolumn参数值设置为value,将参数标签设置为value_name

希望有道理!