Reports with MultiSelect Parameters Not Working

I received a call yesterday from a customer that many of his reports that use a multi select parameter no longer work.  The user could select all his parameters and click View Report with the result being a blank screen and a note in the status bar “Error On Page”.

There were two errors in the SSRS Logs that kept showing up:

System.Web.HttpException: The URL-encoded form data is not valid.

and

Microsoft.ReportingServices.ReportProcessing.ReportProcessingException: There is no data for the field at position X.

After some digging I discovered that this only appeared to happen with multi selects when the user selected A LOT of items in the list.  Looking for what may have changed I discovered that a security patch (KB2656351) was applied to the report server which resolves a vulnerability in the .Net Framework partially by limiting the number of records that can be submitted via web forms to 1,000.

Since my users are selecting more than 1,000 items in their multi select parameters the reports cease functioning on the occasions they select more than 1,000 items in the multi select parameter.

This can be easily resolved by increasing the size limit for MaxHttpCollectionKeys in the Report Manager web.config file.  Inside the <appSettings> tag add:

<add key=”aspnet:MaxHttpCollectionKeys” value=”10000″ />

with a value of anything you need to accommodate your list size.  You’ll need to restart the SSRS service for the changes to take effect.

6 Responses to Reports with MultiSelect Parameters Not Working

  1. Eric K. says:

    Wow, that’s a heckuva multiselect list… 🙂 Good tip, though.

  2. DBA Dave says:

    Dude

    Miles long……….

  3. TS says:

    Excellent post!

    I had the same issue where after selecting parameters and pressing “view report” the report would do nothing. Checking the error log gave the same httpexception error.

    I added the key to the web.config and it started working immediately!

    Thanks!

  4. Jason says:

    Thanks! It was hard enough explaining this problem into Google, so I’m glad I somehow came across this post. It was really frustrating me! Although I’m now trying to figure out how big I can make this parameter because we allow our clients to individually pick patients from the multi-select, but if they choose All, it includes about 15,000 patients. Yikes!

  5. Jason,
    Let me know if you find an upper limit, I’d be interested to know if there is one…

  6. Ramesh says:

    I had the same issue.Fixed it now.

Leave a Reply

Your email address will not be published. Required fields are marked *