Solved

Pass ReportViewer Parameter as Report Title

Posted on 2011-09-20
15
1,601 Views
Last Modified: 2012-08-14
I would like to pass a parameter to a ReportViewer to use in the Page Heater.

I have the code:
Dim params As ReportParameter() = New ReportParameter(0) {}
params(0) = New ReportParameter("userOptions", "xxx")
ReportViewer1.LocalReport.SetParameters(params)

I have the parameter userOptions set in the Report Parameters dialog as a string data type.

And I have a text box in the Page Header whose Value is set to:
=Parameters!userOptions

Without this parameter the report runs just fine, but with it, I get the error LocalProcessingException, "An error occurred during local report processing," on the third line of code shown above.

Could there be something I'm not filling out in the dialog?  Or what do I have wrong?
0
Comment
Question by:AmyFPA
  • 8
  • 7
15 Comments
 
LVL 8

Expert Comment

by:pdd1lan
ID: 36567643
try to put put "Me.ReportViewer1.RefreshReport()"

Dim params As ReportParameter() = New ReportParameter(0) {}
params(0) = New ReportParameter("userOptions", "xxx")
ReportViewer1.LocalReport.SetParameters(params)
Me.ReportViewer1.RefreshReport()
0
 

Author Comment

by:AmyFPA
ID: 36568585
Yes, I have RefreshReport.  But the error comes on the SetParameters line.
0
 
LVL 8

Expert Comment

by:pdd1lan
ID: 36568624
I copied your code, set textbox in page head =Parameters!userOptions.Value
and run it and it worked for me

 Dim params As ReportParameter() = New ReportParameter(0) {}
        params(0) = New ReportParameter("userOptions", "xxx")
        ReportViewer1.LocalReport.SetParameters(params)
        Me.ReportViewer1.RefreshReport()
0
Free Tool: Path Explorer

An intuitive utility to help find the CSS path to UI elements on a webpage. These paths are used frequently in a variety of front-end development and QA automation tasks.

One of a set of tools we're offering as a way of saying thank you for being a part of the community.

 

Author Comment

by:AmyFPA
ID: 36569031
So it must be something in my report.  My report runs just fine without that line where it uses the parameters.
0
 
LVL 8

Expert Comment

by:pdd1lan
ID: 36580444
have you tried to create a new RDLC report instead?  something might helps.
0
 

Author Comment

by:AmyFPA
ID: 36719553
I tried creating another report and using that one.  Now I get the message that the "parameter is missing a value."

Could it be that I'm setting things wrong in the Report Parameters dialog?
0
 

Author Comment

by:AmyFPA
ID: 36720102
Now I've tried checked the box in the Report Parameters to allow null values, and I get the message, "Some parameters or credentials have not been specified."
0
 
LVL 8

Expert Comment

by:pdd1lan
ID: 36891598
in the report, have you created a Parameters (userOptions)?

can you attach your report (rdlc) file?  I give it a look if you would like....
0
 

Author Comment

by:AmyFPA
ID: 36903373
Yes, I have created the parameter userOptions.

Here is my rdlc file.
TasksToDo.rdlc.txt
0
 
LVL 8

Expert Comment

by:pdd1lan
ID: 36904044
try it:

delete your "userOptions" parameter in your report, remove =Parameters!userOptions.Value in textbox8

recreate "userOptions" parameter in your report, and reset "=Parameters!userOptions.Value" in your textbox 8.  and should fix your issue.

also, your textbox8 was set in visible= false (hide mode), you need to set it to visible = true (visibillity to show).



0
 

Author Comment

by:AmyFPA
ID: 36912925
Now I get "The 'userOptions' parameter is missing a value" instead of the report showing in the ReportViewer when I run it.

Is there something I need to set in the parameters?
0
 
LVL 8

Expert Comment

by:pdd1lan
ID: 36935966
look like your report parameter does not check for "Allow blank value" or "allow null value" property.
if you don't check them in your "userOptions" report parameter, and then when you pass a null or empty value into your report, it will give you "parameter is missing a value" error.

------
Dim params As ReportParameter() = New ReportParameter(0) {}
        params(0) = New ReportParameter("userOptions", "xxx")
        ReportViewer1.LocalReport.SetParameters(params)
        Me.ReportViewer1.RefreshReport()
0
 

Author Comment

by:AmyFPA
ID: 36942277
Thank you, pdd1lan.

I copied your code exactly, and I checked the box to allow for Null values.

Now where the report should show in the ReportViewer when I run it, it says "Some parameters or credentials have not been specified."
0
 
LVL 8

Accepted Solution

by:
pdd1lan earned 125 total points
ID: 36951934
0
 

Author Closing Comment

by:AmyFPA
ID: 36955638
Success!  Yea!

I needed both refreshes:
ReportViewer1.LocalReport.Refresh()
ReportViewer1.RefreshReport()
0

Featured Post

Free Tool: ZipGrep

ZipGrep is a utility that can list and search zip (.war, .ear, .jar, etc) archives for text patterns, without the need to extract the archive's contents.

One of a set of tools we're offering as a way to say thank you for being a part of the community.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Article by: jpaulino
XML Literals are a great way to handle XML files and the community doesn’t use it as much as it should.  An XML Literal is like a String (http://msdn.microsoft.com/en-us/library/system.string.aspx) Literal, only instead of starting and ending with w…
Microsoft Reports are based on a report definition, which is an XML file that describes data and layout for the report, with a different extension. You can create a client-side report definition language (*.rdlc) file with Visual Studio, and build g…
Although Jacob Bernoulli (1654-1705) has been credited as the creator of "Binomial Distribution Table", Gottfried Leibniz (1646-1716) did his dissertation on the subject in 1666; Leibniz you may recall is the co-inventor of "Calculus" and beat Isaac…
In an interesting question (https://www.experts-exchange.com/questions/29008360/) here at Experts Exchange, a member asked how to split a single image into multiple images. The primary usage for this is to place many photographs on a flatbed scanner…

821 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question