【问题标题】:Hide parameter (dropdown control from the toolbar) in SSRS based on another Parameter基于另一个参数在 SSRS 中隐藏参数(工具栏中的下拉控件)
【发布时间】:2014-01-31 13:52:00
【问题描述】:
我正在使用 .NET ReportViewer 控件。
如果用户是管理员,我们只想显示“经销商”下拉菜单。
是否可以根据传入的另一个参数(如 IsAdmin)隐藏“经销商”下拉控件?
【问题讨论】:
标签:
reporting-services
ssrs-2008
【解决方案1】:
参数的Hidden 属性只能是True 或False,因此您不能使用动态更改可见性的表达式。
但是,您可以做的是使@Dealer 参数的可用值限制基于登录用户的选择。例如,假设每个用户都属于一个经销商,但管理员可以查看所有经销商。使@Dealer 参数的可用值的 SQL 类似于:
SELECT DealerId, DealerName
FROM Dealers
WHERE @UserId = 'Admin'
OR DealerId IN (SELECT DealerId FROM Users WHERE UserId = @UserId)
现在该参数将在用户为管理员时显示所有经销商,但在用户不是管理员时仅显示该用户的特定经销商。将参数默认为用户的经销商,您就可以开始了。
@UserId 是当前登录用户的全局参数。