在SSRS中手动输入参数值或全部默认值

时间:2018-03-08 21:31:25

标签: sql-server reporting-services parameters ssrs-2012

我尝试在SSRS中创建一个参数,用户可以选择手动输入ID,或让报告返回所有记录。这是参数当前的外观:enter image description here

在这种情况下,用户可以手动输入一个有效的商品。但是用户是否可以将providerid参数留空,然后默认情况下报告将针对所有记录运行?

使用存储过程填充providerid参数:

    Select distinct cast(providerid as varchar(25)) as providerid
    from Table A

我已经阅读了其他类似的线索,但我无法弄清楚如何让这项工作。

1 个答案:

答案 0 :(得分:0)

执行此操作的标准方法是:

将另一个项目添加到名为ALL的下拉列表中,并带有特殊值

Select distinct  
cast(providerid as varchar(25)) as providerid,
cast(providerid as varchar(25)) as providerLabel
from Table A
union all
select -1, 'All Providers'

确保正确分配标签和值。

在存储过程中允许此特殊值:

where ...
and  (providerid = @providerid or @providerid = -1)
and ...