【发布时间】:2016-10-19 13:14:17
【问题描述】:
有没有办法在 SSRS 中设置一个名为“Pay Period”的参数,只允许选择特定的日期范围?例如,仅允许 09/19/2016 到 09/25/2016,不允许 09/20/2016 到 09/26/2016。任何周一到周日的组合都可以,否则就不行了。
我正在考虑提供这些范围的下拉列表(而不是两个不同的参数),但不确定如何实现。
【问题讨论】:
-
我认为您可以设置两个参数让用户选择日期范围,但设置隐藏的两个附加参数以验证日期范围并将其传递给您的查询。
-
我想我以前也这样做过。只是觉得如果你可以对两个日期都做一个参数会很好,但不确定是否可能。
-
这是可能的,但是您必须创建一个返回每个范围的查询并使用它来填充参数,并且在查询中传递您需要处理值以进行转换的参数在两个带有开始日期和结束日期的 SQL 参数中。
-
您可以在一个参数中执行此操作的唯一方法是使用带有
09/19/2016 - 09/25/2016之类的值的数据驱动参数,然后您可以在数据集中相应地处理该参数。 -
如果您对您的业务有特定的日期定义,即支付周期,那么您应该将它们保存到一个表中并从那里使用它们。因此,您将有一个表格,其中每个支付期有一条记录,其中包含开始日期、结束日期和标签。您从此表中选择以填充您的下拉列表。您在报表查询中加入此表并对其进行过滤。这让人们不必记住特定的日期(并可能把它们搞砸)
标签: sql-server sql-server-2008 reporting-services