Problem with opening Report Data Source

Activating the reporting features

By default, when the SSRS 2016 is installed, the root site collection has the features turned on. For the rest of site collections, you will have to activate it manually. To activate reporting features:

  1. Go to Site Settings page of the site collection
  2. Click Site collection features under Site Collection Administration
  3. Click Activate against Report Server Integration Feature
  4. Go to Site Settings page of the site you want to create reports in
  5. Click Manage site features under Site Actions
  6. Click Activate against Report Server File Sync

By activating the features, two reporting content types are added to the site collection: Report Builder Report and Report Data Source.

Note: Report Model is deprecated and you cannot create Report Model from SSRS 2016, but you can continue to use the existing report models as a source.

Problem with Report Data Source

After I installed and configured SSRS 2016 in the SharePoint 2016 environment, I can now check if my existing reports are still working or not. (We have been using SSRS reports a lot in SharePoint 2013 already.)

I tried to create a new site collection and created data source and reports there. Everything seems to be working perfectly. However, when I tried to open an existing report, it’s complaining about the data source.

As I click on the report data source, I couldn’t edit it but received the following error:

Index was out of range. Must be non-negative and less than the size of the collection.
Parameter name: index

There wasn’t much of help on the web to my specific problem, however, there are some solutions:

1. There are some invalid page layouts deployed to the master page of your report.

Please delete them using UI, you can refer to this thread: Index was out of range. Must be non-negative and less than the size of the collection.

2. There are images in the page header or page footer, but the footer or header is not large enough to handle the image inside it.

Change the height of the page header or page footer. Please refer to Index was out of range. Must be non-negative and less than the size of the collection. Parameter name: index.

3. Please try to change the parameter Toggle’s data type from Integer to Boolean and set the available values are:
Expand All—-true
Collapse All—-false

Investigating the master pages

In my case, it’s to do with opening the Report Data Source file, not actual reports. So any solutions refer to changing a report itself are not applicable. The only thing I could think of was the custom master page.

After a couple of testing, I found out that my custom master page was only affecting the Report Data Source files when it’s set as System Master Page. That is if I changed the System Master Page back to seattle (the default one), the report files would work. If you can live with this, then problem solved. If not, we need to find the differences between the default and custom master pages.

masterpage

There are a number of online code compare tools out there, and the one I used was Code Difference Comparison Tool. It compares the codes side by side and highlights the differences. That’s all we need. The quickest way to locate the ‘show-stopper’ is to repeat the following steps for the bits that are different to the default:

  1. Remove the difference or change the code the same as the section in Seattle
  2. Test the Report Data Source file see if it opens
  3. If error persists, revert the code back to what it was, and repeat the steps for the next difference

The bit of code I found was in the breadcrumb placeholder:

Seattle master page
SiteMapProviders=”SPSiteMapProvider,SPContentMapProvider”

Custom master page
SiteMapProvider=”SPContentMapProvider”

After updating the custom master page to the same as the Seattle master page, I can open all of the Report Data Source files.

References

Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s