Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Reporting Services: Tablix RepeatColumnHeaders doesn't work on some reports

So I've got various reports that consist of a DataSet rendered in a Tablix... pretty garden variety stuff. There is a property for the Tablix control named RepeatColumnHeaders, which I have set to True for each report in question. The explanation for this property states “Indicates whether column headers are repeated on each page on which part of the data region appear.” Sounds pretty straightforward, but on some reports it works and on others it does not. I can't seem to find what's different about the reports that might affect this. On one report where the headers do repeat, there is some fairly arcane grouping mojo, but in an example where it doesn't work the Tablix only has one level--no grouping. I would expect the multi-nested one to be the problem, not the flat one.

Maybe it's a different problem altogether. I threw together a simple Tablix rendering SELECT * FROM Foo, accepted all the default values, which results in RepeatColumnHeaders being set to False, and lo and behold the column headers do repeat for that report... Grrr.

Any insights greatly appreciated.

like image 657
Rex Miller Avatar asked Jan 28 '09 19:01

Rex Miller


People also ask

How do I repeat Tablix headers on each page?

Right-click the row, column, or corner handle of a tablix data region, and then click Tablix Properties. In Column Headers, select Repeat header columns on each page. Select OK.

How do you fix a table header in SSRS?

I think this can be fixed by setting the FixedData property to True in Advanced Mode. To get to Advanced Mode, click the down arrow on the grouping pane, select Advanced Mode, then select Details and check the properties there.


2 Answers

It's a bit wonky from what I've managed to dig up. In your grouping pane, select advanced mode, then select your outermost static row. You should then see the "RepeatOnNewPage" property.

Update: finding Advanced Mode:
The comment by @HCL links to the other answer by @user359904, that has the info on how to find and enter Advanced Mode:

  1. Select the tablix
  2. Below the report are "Row Groups" and "Column Groups", all the way to the right of "Column Groups" is a small downward arrow.
  3. Click the arrow, choose Advanced Mode.
like image 70
vinny Avatar answered Sep 18 '22 05:09

vinny


I found a solution that works for me. Vinny's answer led me to it.

Thankfully, I didn't have to recreate my tablix. I had three rows that made up my tablix header. I added three rows outside of the highest level group. These rows are not bound to any group. I modified the rows so that they exactly duplicated the header rows I had in my highest level group. I set the KeepWithGroup property to "After" and the "RepeatOnNewPage" property to true for each of these header rows. I tested the report. The header appeared at the top of every page but due to the duplication of the header rows both inside the highest level group and above the highest level group, the header repeated twice at the top of the first page and at every section break. I deleted the header rows in the topmost section and the duplication went away. Headers repeat correctly at the each break of the highest level group and at the top of each page. There are no header rows in the highest level group.

To set KeepWithGroup and RepeatOnNewPage: Select the tablix. In the group box below the design pane, click on the down arrow to the right of the text that reads "Column Groups" and make sure "Advanced Mode" is checked. Click the first static row and set the KeepWithGroup property to "After" and "RepeatOnNewPage" to true. Do that for each of the rows that comprise your header.

like image 27
user359904 Avatar answered Sep 21 '22 05:09

user359904