views:

1735

answers:

1

Is there a way to have a SQL Reporting Services (2005) dynamically show or hide parameters?

For example, if the user is a "power user," show parameters A, B, C, D, but if you're a novice, show only A & B?

This isn't a security or "limiting" concern, just an attempt to not overwhelm some users or overly restrict others.

Thanks!

A: 

Not as simply as you'd like, I'm sorry.

One way would be to create a linked report for different users, say "Report (Advanced filter)" and "Report (Simple filter)". You can hide parameters in the properties of the linked report.

Another way, assuming you use User!UserID, would be to change the contents of list paremeters based on this (by filtering on the database side when you bind the parameter to a data set).

Finally, you may be able to do it with a ReportViewer control but this requires an ASP.NET wrapper.

gbn
The advanced and simple is what we're going with now.I don't think using UserID to change the params' definition would work, you'd still have to have the same NUMBER of parameters visible. And yes, I'm sure you could use a wrapper and pass in parameters. So no internal RS way, I take it?
tsarstruck
Getting a ASP.NET wrapper, by the way, would require getting a whole other team involved, so we'd probably settle for the simple/advanced versions.
tsarstruck
I don't know of any internal RS ways, sorry. There is an API but I don't know how you'd control this on demand, base on user group sorry
gbn
Thanks, GBN. I wasn't expecting a solution, and it's at least good to know the limitations.
tsarstruck