【问题标题】:SSRS 2008: Show report parameter in textbox if parameter is not NULL or blankSSRS 2008:如果参数不是 NULL 或空白,则在文本框中显示报告参数
【发布时间】:2014-08-22 17:20:33
【问题描述】:

我有一份报告 (SSRS 2008 r2),它有两个参数,@StartDate 和 @EndDate。两个参数都设置为类型:日期/时间并允许 NULL 值。现在,@EndDate 默认为 NULL(我正在处理 SP 中的 NULL 值),在我的报告中,我有一些文本框,其中显示了报告中使用的开始和结束日期范围。

对于显示结束日期的文本框,如果参数为 null 或空白,我使用显示当前日期的表达式,但如果用户选择结束日期,则文本框应显示所选的结束日期。这是我遇到问题的地方。

我正在使用以下表达式来显示结束日期。

=IIF(IsNothing(Parameters!EndDate.Value) OR Parameters!EndDate.Value = "", Format(Now(), "MMM - dd, yyyy"), Format(Parameters!EndDate.Value, "MMM - dd, yyyy"))

如果结束日期参数为 NULL,则表达式有效,但如果我选择结束日期,则表达式总是返回 #Error

我创建了单独的文本框来尝试这个表达式的不同部分。两者:

Format(Now(), "MMM - dd, yyyy")

Format(Parameters!EndDate.Value, "MMM - dd, yyyy")

自己工作正常。当我尝试将它们放入 IIF 块中以根据 EndDate 参数是否为 null 或空白时有条件地返回一个或另一个时出错。

【问题讨论】:

  • 这应该可以工作.. =IIF(IsNothing(Parameters!EndDate.Value) OR (NOT IsDate(Parameters!EndDate.Value)), Format(Now(), "MMM - dd, yyyy"), Format(Parameters!EndDate.Value, "MMM - dd, yyyy"))

标签: reporting-services ssrs-2008 ssrs-2008-r2


【解决方案1】:

这应该工作..

=IIF(IsNothing(Parameters!EndDate.Value) OR (NOT IsDate(Parameters!EndDate.Value)), Format(Now(), "MMM - dd, yyyy"), Format(Parameters!EndDate.Value, "MMM - dd, yyyy"))

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多