27477 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: May 31
May Goal: $40.00
Gross: $0.00
Net Balance: $0.00
Left to go: $40.00
Contributors


News Feeds
The Register
VMware doubles node
count for EVO:RAIL
hyperconvergencewar
e
Factory reset FAILS
in 500 MEEELLION
Android phones
ZX Spectrum
"Hobbit" revival
sparks developer
dispute
Heroic German
rozzers rescue
innocent lamb from
sordid brothel
HP beats the street
on earnings, misses
on revenue in Q2
Big sales growth
nothing to do with
NSA fears - Huawei
top brass
Hacker uses
Starbucks INFINITE
MONEY for free
CHICKEN SANDWICH
PCI council gives
up, dumbs down PCI
DSS for small
business
VMware beta testing
database-as-a-servi
ce based on SQL
Server
EXT4 filesystem can
EAT ALL YOUR DATA
Slashdot
Musical Organ
Created From 49
Floppy Disk Drives
DNA On Pizza Crust
Leads To Quadruple
Murder Suspect
Gravitational
Anomalies Beneath
Mountains Point To
Isostasy of Earth"s
Crust
Netgear and ZyXEL
Confirm NetUSB
Flaw, Are Working
On Fixes
YouTube Live
Streams Now Support
HTML5 Playback and
60fps Video
What Was the
Effect of Rand
Paul"s 10-Hour
"Filibuster"?
Security
Researchers Wary of
Wassenaar Rules
Australian ISP
Offers Pro-bono
Legal Advice To
Accused Pirates
Student
Photographer
Threatened With
Suspension For
Sports Photos
Academics Build a
New Tor Client
Designed To Beat
the NSA
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 25078 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