SSRS Report Content Blank

I had a problem running reports in Sql Server Reporting Services (SSRS) 2008 R2.

After setting up the site, creating several users and downloading several reports, I select the report to run, enter the parameters and wait for the report to appear ... but nothing happens. I see the โ€œDownloadโ€ animation for a short period of time (varies from one to ten seconds regardless of the report), but it soon disappears, leaving nothing but the options at the top of the page. The contents of the report are not displayed at all.

This happens in every report that I deploy to an SSRS instance, regardless of size, number of parameters, etc. Most reports have about eight parameters of a similar type, and their layouts are relatively tabular format: there are several "sections", each of which contains a table that can have a grouping and / or repeat lines. On average, each table contains about six fields. Queries that support report datasets are not very heavy: I can run them against SQL in less than half a minute in most cases.

I studied and implemented the solutions in the following questions, but none of them fixed the problem.

(Linked to Safari / Chrome) SSRS 2008 R2 - SSRS 2012 - ReportViewer: reports are empty in Safari and Chrome

(Associated with running the browser as an administrator) SSRS 2008 - Reporting Services webpage is blank except for the headers

Other options that I have considered include running reports from a computer directly rather than from a remote desktop, and running reports from other computers on the network other than the server on which they are located. None of the options have consistent success.

However, I determined that this problem is directly related to the number of parameters passed to the report. For example, most of my reports have more than six or seven parameters with multiple choices; each of them is populated at run time from the database. If users perform "Select All" or otherwise select a large number of parameters in the parameter selection, the above problem appears. However, if users are specific with their parameters and only select a few, then the report displays correctly.

A further complication of this situation is that it suffers from the โ€œwork on my machineโ€ syndrome. This occurs in some environments, but not in others.

As already mentioned, I can run reports by limiting the number of selected parameter values; It works in any environment. I am curious, however, why this happens (perhaps the internal SSRS limit?) And what can I do to consistently avoid this in the future.

+7
source share
4 answers

I had the same problem, and following Alex Zakharovโ€™s suggestion, I found a parameter that had almost 700 rows, and all of them were selected by default. Deselecting multiple lines at once resolved my problem, but it was unsatisfactory for the output.

Searching the log files suggested by lrb ( \Program Files\Microsoft SQL Server\MSRS10_50.MSSQLSERVER\Reporting Services\LogFiles\ ) I found the following error message:

 ERROR: HTTP status code --> 500 -------Details-------- System.Web.HttpException: The URL-encoded form data is not valid. ---> System.InvalidOperationException: Operation is not valid due to the current state of the object. at System.Web.HttpValueCollection.ThrowIfMaxHttpCollectionKeysExceeded() 

Decision

This led me to this answer to find and update web.configs, add the lines of code below and then restart the service.

 <appSettings> <!-- default is 1000 --> <add key="aspnet:MaxHttpCollectionKeys" value="2000" /> </appSettings> 

I had to update in two places because SSRS has separate websites for Report Manager and Report Server: \Program Files\Microsoft SQL Server\MSRS10_50.MSSQLSERVER\Reporting Services\ReportServer\web.config

\Program Files\Microsoft SQL Server\MSRS10_50.MSSQLSERVER\Reporting Services\ReportManager\web.config

+1
source

There are no internal restrictions for the parameters!

First suggestion : Easy to debug, displaying labels if the table returns "no value"


I solved the same problem with the corrected query syntax for the parameters in the SQL query:

 ... WHERE t.FieldName = ISNULL (@parameter, t.FieldName) AND t.FieldName2 = ISNULL (@parameter2, t.FieldName2) ... 
0
source

I ran into the same problem with a multiple select dropdown with a long list of possible values โ€‹โ€‹(> 100). Check your situation and find out which parameter breaks the report.

0
source

SENTENCE

I just want to share my solution with this question. After such a big fight and many attempts, my problem was more on the front end, there was one piece of code that I was missing that returned blank pages, but the server report worked well.

Using Angular to return an HttpResponseMessage from a web API, this is originally my call:

 $http.get(url + 'Report/getUsersReport?CustomerId=' + searchCriteria.customerId + '&fromDate=' + searchCriteria.fromDate + '&toDate=' + searchCriteria.toDate).then(getContractsForBackOfficeReportComplete, function (err, status) {defered.reject(err);}); 

and after adding this line of code { responseType: 'arraybuffer' }) :

 $http.get(url + 'Report/getUsersReport?CustomerId=' + searchCriteria.customerId + '&fromDate=' + earchCriteria.fromDate + '&toDate=' + searchCriteria.toDate, { responseType: 'arraybuffer' })(getUsersReportBackOffice, function (err, status) { defered.reject(err);}); 
0
source

All Articles