【问题标题】:Pick which value to feed in second parameter in SSRS选择在 SSRS 中输入第二个参数的值
【发布时间】:2015-09-30 18:46:10
【问题描述】:

我有两个日期的报告:ProductCreatedDate, ProductSoldDate。用户需要能够过滤createdDateSoldDate,而不是两者。我怎样才能做到这一点? 我正在考虑创建三个参数。第一个会给用户一个选项来选择他们想要过滤的日期。例如:

First Parameter-
Pick Date type:
Product Created Date
Product Sold Date
Second parameter based on first parameter value-
Start Date (calendar form)
Third parameter based on first parameter value-
End Date (Calendar form)

假设用户选择值Product Created Date 作为第一个参数

那么第二个和第三个(开始和结束日期日历)参数应该基于ProductCreatedDate过滤器

关于如何做到这一点的任何建议?

我已经尝试过希望它会起作用:

WHERE (CASE WHEN @Type = 'Created' THEN ProductCreatedDate BETWEEN @StartDate AND @EndDate END)
OR (CASE WHEN @Type = 'Sold' THEN ProductSoldDate BETWEEN @StartDate AND @EndDate END)

【问题讨论】:

  • 请先认真尝试一下。我在这里看到的是“嘿,我想做 XYZ,请给我”,而不是“”嘿,我试过 XYZ,但这里出现了错误,这是怎么回事?”
  • ..所以建议向我们展示您的代码(或屏幕截图..或其他东西); - )
  • 我尝试在 where 子句中添加 case 语句,因此参数取决于前一个参数,但这不起作用,所以我不知道该怎么做。我也四处寻找答案,但找不到任何关于我正在寻找的东西。老实说,我什至不确定这是否可能,我并不是在要求“把代码给我”,而是要求有关如何处理它的建议或想法。我向你保证我喜欢挑战自己,但我有点坚持这个。

标签: sql reporting-services parameters ssrs-2008


【解决方案1】:

如果您有 3 个参数(DateType、StartDate、EndDate),您可以在 WHERE 中添加一些 ANDS 和 ORS。

WHERE (@DateType = 'Created' AND ProductCreatedDate BETWEEN @StartDate AND @EndDate)
      OR (@DateType = 'Sold' AND ProductSoldDate BETWEEN @StartDate AND @EndDate)

【讨论】:

  • DateType 不是一个字段,它只是我想创建的一个参数以允许用户选择。根据选择的值,第二个和第三个参数将提供它的值。我正在尝试什么:请参阅我的帖子以获取代码
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-04-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多