根据另一个参数隐藏SSRS中的参数(工具栏中的下拉控件)

时间:2014-01-31 13:52:00

标签: reporting-services ssrs-2008

enter image description here

我正在使用.NET ReportViewer控件。

如果用户是管理员,我们只想显示“经销商”下拉列表。

是否可以根据传入的其他参数隐藏“经销商”下拉控件,例如IsAdmin?

1 个答案:

答案 0 :(得分:2)

参数的Hidden属性只能是TrueFalse,因此您无法拥有可动态更改可见性的表达式。

但是,您可以做的是根据登录用户使@Dealer参数的可用值限制选择。例如,假设每个用户都属于经销商,但管理员可以看到所有经销商。使@Dealer参数的可用值的SQL类似于:

SELECT DealerId, DealerName
FROM Dealers
WHERE @UserId = 'Admin'
OR DealerId IN (SELECT DealerId FROM Users WHERE UserId = @UserId)

现在,当用户是管理员时,参数将显示所有经销商,但是当用户不是时,该参数将仅显示该用户的特定经销商。将参数默认为用户的经销商,你就可以了。

@UserId是当前登录用户的全局参数。