SSRS动态查询和共享数据集

时间:2013-10-18 12:27:42

标签: sql sql-server dynamic reporting-services

在SSRS 2008 R2上使用嵌入式数据集编写动态查询非常简单。

例如,如果我有一个名为Employees的表和一个名为@Column的报表参数,它包含'Name'或'Surname'或其他任何内容,我可以为我的数据集编写以下查询:

="SELECT * FROM Employee WHERE " & Parameters!Column.Value & " =  " 
  & Parameters!Criteria.Value

我想用共享数据集实现相同的功能。似乎参数集合在共享数据集中不可用,我没有其他方法可以访问参数值来进行动态查询。

提前致谢

1 个答案:

答案 0 :(得分:1)

我终于使用T-SQL的CASE WHEN重写了我的查询。

所以新的查询(不那么动态)就像那样:

SELECT *
FROM Employee
WHERE 
    CASE @Column
       WHEN 'Name' THEN Name
       WHEN 'Surname' THEN Surname
    END
    = @Criteria

感谢。