27445 total geeks with 3535 solutions
Recent challengers:
 Welcome, you are an anonymous user! [register] [login] Get a yourname@osix.net email address 

Articles

GEEK

User's box
Username:
Password:

Forgot password?
New account

Shoutbox
MaxMouse
It's Friday... That's good enough for me!
CodeX
non stop lolz here but thats soon to end thanks to uni, surely the rest of the world is going good?
stabat
how things are going guys? Here... boring...
CodeX
I must be going wrong on the password lengths then, as long as it was done on ECB
MaxMouse
lol... the key is in hex (MD5: of the string "doit" without the "'s) and is in lower case. Maybe i should have submitted this as a challenge!

Donate
Donate and help us fund new challenges
Donate!
Due Date: Apr 30
April Goal: $40.00
Gross: $0.00
Net Balance: $0.00
Left to go: $40.00
Contributors


News Feeds
The Register
Amazon"s clouds are
da bomb, say EU
data protection
watchdogs
UK"s National
Museum of Computing
celebrates 10
glorious years
ESA reveals
Rosetta"s snaps of
MARS and EARTH
It"s the FALKLANDS
SYNDROME! Fukushima
MELTDOWN to cause
"10,000 Chernobyls"
in South At
Virgin Media goes
TITSUP, RUINS
Tuesday evening
Mozilla project
spits out threat
modelling tool for
sysadmins
OpenDaylight and
friends spin up
"CloudRouter
Project"
Netflix teams with
AWS to launch
VHS-as-a-service
Firefox hits prime
time as version 37
manifests
POODLE vuln dogs
Australian consumer
modems
Slashdot
UK IP Chief Wants
ISPs To Police
Piracy Proactively
World"s Largest
Aircraft Seeks
Investors To Begin
Operation
The End of College?
Not So Fast
NSA Worried About
Recruitment,
Post-Snowden
Why More "Star
Wars" Actors Don"t
Become Stars
We"re In a Golden
Age of Star Trek
Webseries Right Now
Google Unveils the
Chromebit: an HDMI
Chromebook Dongle
Mario 64 Remake
Receives a DMCA
Complaint From
Nintendo
Report: Facebook
Tracks Visitors Who
Have Opted Out,
Violating EU Law
Thousand-Year-Old
Eye Salve Kills
MRSA
Article viewer

List parameters from an SSRS (SQL Server Reporting Services) report into an expression.



Written by:bb
Published by:bb
Published on:2006-10-24 07:55:46
Topic:Dot.Net
Search OSI about Dot.Net.More articles by bb.
 viewed 24729 times send this article printer friendly

Digg this!
    Rate this article :
How to get a list of parameters and their values from an SSRS (SQL Server Reporting Services) report from within an expression of the report. Its a nice way to echo out all parameters a report was run with without having to hardcode and means you can implement standard footers easily.

I found some tips for doing this on James Kovacs' Weblog. But the code wasnt there, so here it is if you wish to implement it. Another useful msdn article is here.

I am using the imported DLL mechanism of writing code for reports (rather than the inline Code section) Simply add this method to an assembly and reference it in your report. Remember to copy the dll to "C:\Program Files\Microsoft Visual Studio 8\Common7\IDE\" to test it when previewing from Visual Studio.

To call this function put a TextBox on your report, edit the expression and add the line
=YourDll.DisplayParams(Parameters, "Param1, Param2");


The function for the assembly
using Microsoft.ReportingServices.ReportProcessing.ReportObjectModel;

///
/// Builds a list of SQL Server Reporting Services Parameters based on a parameter object
/// and a comma delimited string of param names
///
public static string DisplayParams(Parameters obj, string strParams)
{
    StringBuilder sbRet = new StringBuilder();
    try
    {
        //parameters in comma delimited list which matches
        //the name of the parameter in the collection.
        foreach (string sParam in strParams.Split(','))
        {
            //the name of the parameter
            sbRet.Append(String.Format("{0}: ", sParam));

            //concat parmaeter values
            if (obj[sParam].IsMultiValue)
                for (int i = 0; i < obj[sParam].Count - 1; i++)
                    sbRet.Append(String.Format("{0} : ",
                            ((string[])obj[sParam].Label)[i]).Trim());
            else
                sbRet.Append(String.Format("{0}", obj[sParam].Label).Trim());

            //remove any trailing commas
            if (sbRet.ToString().EndsWith(", "))
                sbRet.Remove(sbRet.Length - 2, 2);

                        // seperator for each parameter
                        sbRet.Append("; ");
        }
    }
    catch (Exception)
    {
        return "Error building parameter list";
    }

    return sbRet.ToString();
}

Did you like this article? There are hundreds more.

Comments:
<none>
Anonymously add a comment: (or register here)
(registration is really fast and we send you no spam)
BB Code is enabled.
Captcha Number:


Blogs: (People who have posted blogs on this subject..)
bb
ASP.NET RadioButton GroupName when inside a Repeater on Sun 10th Jun 8am
I was thankful on finding this nugget of code, which makes the groupname work out when slamming in radiobuttons in an asp.net repeater. http://www.codeguru.com/csharp/csharp/cs _controls/custom/article.php/c12371/


     
Your Ad Here
 
Copyright Open Source Institute, 2006