【问题标题】:Use SSRS Expression to Hide Tablix Based on Parameter Selection使用 SSRS 表达式根据参数选择隐藏 Tablix
【发布时间】:2017-03-28 21:46:31
【问题描述】:

我有一份按县或代理商显示销售额的报告 - 但用户不能同时选择两者。 @AgentOrCounty 参数是硬编码的:Agent = 0 和 County = 1。@AgentID 参数只接受一个值,而@CountyID 接受多个值。我的报告有两个tablixes:一个用于数据集,另一个用于在用户同时选择@AgentID 和@CountyID 时显示错误消息

我希望有人可以帮助我如何编写两个表达式来根据用户选择隐藏 tablix。

我遇到的另一个问题是@CountyID 参数是一个多值参数,如果用户希望通过代理显示,我必须传递一个 NULL 值以允许报告运行。

现在,在我的错误消息 tablix 上,我有以下表达式:

=IIF(LEN(Parameters!AgentOrCounty.Value)=0,TRUE,FALSE) OR IIF(LEN(Parameters!AgentID.Value)=0,TRUE,FALSE)

但是当用户为代理正确运行报告时,这不会隐藏错误消息 tablix。

当我从逻辑角度思考时,如果 @AgentOrCountyID = 0 且 @CountyID 为 NULL 或 @AgentOrCountyID = 1 且 @AgentID 为 NULL,我希望隐藏错误消息表。

如果@CountyID 和@AgentID 都不为NULL,我希望隐藏报表数据tablix。

有什么建议吗?

【问题讨论】:

    标签: expression sql-server-2014 ssrs-2008-r2


    【解决方案1】:

    为了隐藏错误信息 tablix,我使用了以下表达式:

    =IIF((Parameters!AgentOrCounty.Value=0 And Parameters!CountyID.Value(0)="NULL") 
    Or (Parameters!AgentOrCounty.Value=1 And Parameters!AgentID.Value Is Nothing),True,False)
    

    为了在用户同时选择代理和县时隐藏我的数据集 tablix,我使用了以下表达式:

    =IIF(Len(Parameters!AgentID.Value)>0 And Len(Parameters!CountyID.Value(0))>0,True,False)
    

    【讨论】:

      猜你喜欢
      • 2018-04-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-10-04
      • 1970-01-01
      相关资源
      最近更新 更多