2011-10-14 29 views
0

在我的SSRS报告中,我有两个参数的开始日期和结束日期。我也有其他人,所以开始和结束日期可以是NULL。但是,我想确保如果选择了开始日期参数,那么也选择结束日期参数。另外,我想确保开始日期早于结束日期(由于显而易见的原因)。SSRS日期参数要求和DateDiff

这两件事情我可以在SSRS中完成,还是需要使用SQL?或者两者兼有?

我正在使用T-SQL Server 2005和SSRS 2005.谢谢!

回答

0

您当然可以在SSRS中进行这些检查而无需调用SQL。但是给用户提供反馈是个挑战。您无法动态更改Report Manager的用户输入部分。

我已经做了什么来解决几乎相同的要求: 保留日期参数的默认值为NULL。然后编写检查(在VB中)在报告正文中显示一个文本框,并在检查失败时显示警告消息(“不正确的参数:您必须...”)。应该将反转添加到任何数据部分,以便在返回无效数据时将其隐藏。如果没有对数据集的可见引用,则不执行查询。

文本框的可见性属性设置为:

=IIF(Parameters!ShowInactive.Value = "Yes" 
    and (ISNothing(Parameters!InactiveFrom.Value) 
     or Isnothing(Parameters!InactiveTo.Value)), 
    false, 
    true) 

将显示在文本框中,如果@InactiveParameter设置为“是”,无论是@InactiveFrom或@InactiveTo参数没有设置。

+0

我不知道VB。你有任何示例代码可以告诉我吗?谢谢。 – SeanFlynn

+0

编辑答案添加特定示例。 –