I got a problem with reporting services, running local rdlc files on the 2005 version.
I have in the HTML a report viewer set to run locally as follows :
I had same problem with VS2012, report shows loading image and then after loading is complete, report is blank. Data exists but not rendered.
Solution : Simply change Report AsyncRendering to False and report works fine again.
Try using a simple report , sometimes reportviewer throws exception caused by invalid RDLC and shows an empty report.
Try also to debug the project and look at the output window in Visual Studio: you will see the warning raised bu the RDL engine, it could be useful to investigate the reason of the error.
I was getting the same problem when I add parameter in rdlc but not assigning it. I solved by adding this code.
Dim p_Date As Microsoft.Reporting.WebForms.ReportParameter
p_Date = New Microsoft.Reporting.WebForms.ReportParameter("DATE", txtDate.Text)
Me.ReportViewer1.LocalReport.SetParameters(New Microsoft.Reporting.WebForms.ReportParameter() {p_Date})
ReportViewer1.LocalReport.Refresh()
In my case the culprit was having parameters with the Allow null value = false (unchecked)... Don't asked me why.
I've spent many days to figure out similar issue. Maybe this could help someone. I've read almost all threads on stackoverflow, but reading comments here made me try this out. In my case first two rows (parameters row and row with option to hide parameters) were shown, but rows that contain management buttons and the report itself were empty. Clicking View report
resulted in no action.
What I've done was loading the report that had parameters without providing them - I wanted user to fill them - on Page_Load
.
protected void Page_Load( object sender, EventArgs e )
{
this.LoadReport();
}
private void LoadReport()
{
// retrieve path param from "Reports/{path}" URL
string reportPath = Request.QueryString[ "path" ] as string;
string reportServerUrl = System.Configuration.ConfigurationManager.AppSettings[ "ReportServerUrl" ];
this.MainReport.ProcessingMode = ProcessingMode.Remote;
this.MainReport.ServerReport.ReportServerUrl = new Uri( reportServerUrl );
this.MainReport.ServerReport.ReportPath = reportPath;
this.MainReport.ServerReport.Refresh();
}
After changing Page_Load
code to the given below everything works fine.
protected void Page_Load( object sender, EventArgs e )
{
if ( !this.IsPostBack )
this.LoadReport();
}
In my case, ReportViewer control does not provide error messages (EventViewer nor ReportViewer control body), just blank page. I think this make hard find and fix the issue. Yoel Halb's answer was my key!
A property called IsReadyForRendering was False. In the BOL refers to parameters topic.
I could inspect every value of the whole parameters with the code (you can execute it from immediate window)
var parameters = ReportViewer1.LocalReport.GetParameters()
You will find the problematic parameter when you look the property State with the value "MissingValidValue"
Hope this helps !