Question

I am trying to freeze all column headers in a report when scrolling down. I have read numerous articles about how to go to Advanced Mode, select the header and set FixedData to True, KeepWithGroup to After, RepeatOnNewPage to True. That works when previewing a report, but it does not work in a browser. I have tried using IE 11, Chrome, and other browsers, but none of them fix the column headers while scrolling.

I have spent hours trying to get this to work and have read articles such as: Freeze column header while scrolling and Freezing column headers while scrolling in SSRS, but none of them accomplish this in a browser.

I tried creating a simple table report from the report wizard and following these instructions, but it still does not work. This is very critical to get working in order to use SSRS. I am using SSRS 2012. Any help would be greatly appreciated.

Was it helpful?

Solution 3

It appears fixed headers simply do not work in the ASP.NET Report Viewer control. I have a simple aspx page with the ReportViewer control on it, testing it in IE 11. The fixed headers work in the Preview and Report Manager, but not the ASP.NET Report Viewer control. Therefore, I decided to simply show my reports using the built-in Report Viewer instead. Fixed column headers work that way.

OTHER TIPS

It's crucial to select the correct "Static" member before setting those properties. For your scenario I think you want the Static member within the Row Groups list.

If there are several "Static" members, select them in turn and note where the selection box moves to in your tablix - this can help pick the right one - usually the last.

My favourite post on this is from Robert B:

http://blogs.msdn.com/b/robertbruckner/archive/2008/10/13/repeat-header-and-visible-fixed-header-table.aspx

Good luck - this is still such an unbeleivable mess after 5 years and 3 releases ...

This is a crazy idea, but instead of using the Report Viewer, could you render the report to HTML and add it to a web page that has a CSS class that will change the header to position:fixed;?

I just spent a couple of days investigating this exact issue. Worked in preview, didn’t when deployed. I had noticed my fixed columns stopped working a few years ago.

My break through was when I started testing using a fresh SSRS 2012 install the freezing rows and columns worked perfectly. By comparing the differences between that and my live system I found the issue was changes made to ReportingServices.js to fix blank reports showing in Chrome.

Forcing el.style.overflow = "visible" instead of its default of “auto” breaks the freezing in IE. Our web developer changed the if statement so it doesn’t do the replace for IE by checking a non IE function exists (window.addEventListener).

if (el  && window.addEventListener)
    el.style.overflow = "visible";

So the complete code added to a fresh ReportingServices.js is the following

function pageLoad() {
   el = document.getElementById("ctl32_ctl09"),

   //Fix Chrome invisible report
   if (el  && window.addEventListener)
      el.style.overflow = "visible";
}
if (window.addEventListener) {
   window.addEventListener('load', pageLoad, false);
} else {
   window.attachEvent('onload', pageLoad);
}

C:\Program Files\Microsoft SQL Server\MSRS11.MSSQLSERVER\Reporting Services\ReportManager\js\ ReportingServices.js

I was able to get my column headings to freeze in IE 9. IE 11 was having issues. IE 11 also did not display vertical and horizontal scrollbars The Solution (for me) was to put IE 11 to compatibility mode.

Instructions to use compatibility mode. 1) Right click the top of the window and then choose to show the "menu bar" 2) in the menu click tools 3) Click "Compatibility View" to add the current web url to the list of pages to show in the compatibility view, this list can be managed by rather clicking "Compatibility View settings"

Hope this helps.. I could not find this documented elsewhere.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top