s-s-rS-基于另一个 Tablix 值隐藏 Tablix

Posted

技术标签:

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

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

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

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

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

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

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

【问题讨论】:

【参考方案1】:

改用Lookup

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

Lookup 函数在 s-s-rS 2008 R2 及更高版本中可用。

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

【讨论】:

以上是关于s-s-rS-基于另一个 Tablix 值隐藏 Tablix的主要内容,如果未能解决你的问题,请参考以下文章

s-s-rS 2008 R2 错误?仍然?动态隐藏列或 tablix 并导出为 CSV

s-s-rS:重复 tablix

基于参数的报表中的多个 Tablix 显示

s-s-rS 嵌套 Tablix 动态增加/减少行高

根据参数显示或隐藏 tablix

根据 s-s-rS 中另一列的值更改数字格式