【问题标题】:SSRS- Hide Tablix based on another Tablix ValueSSRS-基于另一个 Tablix 值隐藏 Tablix
【发布时间】:2014-11-19 14:00:57
【问题描述】:

我对 SSRS 编程有点陌生,我遇到了一个我无法找到答案的挑战。我们正在保护我们的 SSRS 网站,到目前为止我已经取得了成功,但我正在尝试执行以下操作:

当用户登录时,我们有他们的用户 ID。我有一个包含用户 ID 及其“角色”名称的表。我想要做的是,如果登录用户的 ID 没有出现在列表(特定角色列表“)中,则不返回任何数据。隐藏 Tablix 或显示一条消息,说明他们未经授权。

到目前为止,我有我的主要报告 (DataSet1) 和我的查找表 (DataSet2)。我在可见性下的主报告上有以下表达式。

=IIF(First(Fields!LoginNm.Value, "DataSet2") = Parameters!UserID.Value,False,True)

问题是,如果列表中的第一个用户 ID 是登录的人,这将起作用,但之后的任何内容都将无法正常工作。我尝试删除First,但我得到了一个错误。

谁能帮我弄清楚如何用另一个表中的值隐藏一个表?

【问题讨论】:

    标签: .net variables reporting-services dataset query-parameters


    【解决方案1】:

    改用Lookup

    =IIF(Lookup(Parameters!UserID.Value, Fields!LoginNm.Value, Fields!LoginNm.Value, "DataSet2") = Parameters!UserID.Value, False, True)
    

    Lookup 函数在 SSRS 2008 R2 及更高版本中可用。

    请注意,用户 ID 在全局变量 User!UserID 中也可用。

    【讨论】:

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