如何在SSRS中生成包含某些过滤条件的报告?

时间:2013-03-08 17:35:21

标签: sql reporting-services filter report

我需要一份报告来确定哪个帐号与特定的自动VIN一起使用。 该报告需要一些与t-sql中的“Like”类似的搜索或过滤条件。例如,如果一个人查找以“231Z9”结尾的VIN,那么他/她需要一些东西来过滤VIN列,“VIN Like'%231Z9%'”,以查看是否有任何匹配。 它还需要按客户名和客户姓氏过滤。最后, 过滤器不应嵌入sql中,并且在应用时需要为“OR”而不是“AND”。 任何建议将不胜感激。感谢

3 个答案:

答案 0 :(得分:0)

编写一个存储过程,它将返回报告的结果数据集。对于stores过程,提供可以在SSRS报告中查看的参数,并且可以嵌入到SQL中。

要为报告指定相同的参数,您可以使用SSRS中的报告参数选项

答案 1 :(得分:0)

  1. 为VIN创建文本变量

  2. 为FirstName

  3. 创建文本变量
  4. 为LastName

  5. 创建一个文本变量
  6. 使用谓词

    设置数据集
    Select (things)
    from (object)
    Where VIN like '%' + @VIN + '%' or
         FirstName like '%' + @FirstName + '%' or
         LastName like '%' + @LastName + '%'
    

答案 2 :(得分:0)

我假设“过滤器不应嵌入SQL中”,您的意思是标准必须参数化,而不是硬编码。存储过程对此有好处。

如果创建检索所需数据的参数化存储过程,请在使用该存储过程作为源的新SSRS报告中设置DataSet。将自动生成报告参数以对应于存储过程参数。您可以编辑报告参数(用于用户友好的标签,以控制它们是可选的还是必需的等)。

这是假设您的报告将通过网络访问。如果您的报告将成为客户端应用程序的一部分(而不是Web应用程序),那么您实际上有更多可用选项。