Freeze Column in SSRS report - reporting-services

I know this is been asked a million times and I have done it myself successfully a number of times however better to check than to assume it can't be done in my scenario.
Is it possible to freeze the first detail column where a parent group exists?
I have a parent Group setup which is grouped on 3 columns (in Advanced Mode Row Groups there are 4 columns above the Parent group, the 4th being the first detail row header and 2 static columns between the Group and the Details, the Details being the last column and I have a number of Static Column Groups) and I have right clicked on the Tablix header to view the properties and checked under Row Headers "Keep header visible while scrolling", and it Freezes my 3 columns in my Group only. So now I just want to freeze one more column the first detail column adjacent to the group - is it possible. I have as other posts suggest goto the static column and set the FixedData for scrolling but what Static column, I tried a number of combinations.
I also tried the Fixed Data on the first Column Group however When the "Keep header visible while scrolling is checked it does not compile and when it isn't ticked it freezes vertically and might I add horizontally as well which is just wrong and it scrolls on the first detail column only and not the 3 preceding group columns!!

Answer is to make my first detail column a child group of the existing parent column so now I have 2 levels of grouping and details. Should have thought of that!

Related

Keep rows together on the same page in ReportViewer (RDLC)

I've created a RDLC report that looks like this:
Basically data is grouped first by Category and then by Subcategory. Then, as you can see from the screenshot, the Details group has multiple rows, since I want to organize data in that "grid-like" layout.
Now, the problem is that I want the following pagination behavior:
The first row of the table ([Category]) should never have a page break after it, in other words: it should always stay together with the second row ([Subcategory])
Same with the second row ([Subcategory]): I never want a page break after it, it should always appear together with the first block of detail rows
The details rows should never be split into multiple pages, so I want all the 9 table rows in the details group to always appear together on the same page
I've been playing around for several hours with the KeepTogether and KeepWithGroup properties of the Row and Column groups, but they mostly seem to have no effect whatsoever. How should I set them to achieve the behavior I want?

SSRS Report Page Break Logic for Groups in a single report

I have created an SSRS table element where we have multiple grouped items like below generated in a Portrait mode.
Problem:
Whenever there are many items in a single group, some items in the group get spilled over to the next page. That is, a page break is applied.
Example,
If there are 3 groups in a table, and 2nd group contains 50 items, 30 are displayed on the first page, page breaks and then the remaining 20 are displayed on the second page and so on until all the remaining groups are displayed. This is a normal scenario which happens by default.
Expected Solution:
What is expected is, if the data region of any of the group spills over to the next page, then the whole group along with the group header needs to be shifted to the next page. The idea is to have the whole data region of the group stay together.
This is like a smart table (group split).
This is dynamic in nature in the sense, where if for a group with less rows, it fits and stays together on a single page, then page break doesn't happen.
I tried multiple options like below but none of them worked.
- Change the Keep Together flag of the Grouped rows and the Data Region to True.
- Add a page break after each row group using the Group properties.
Can someone please let me know if there is at all a way to achieve the smart page break like the one expected above?
You can't do that but there are two ways that you can do.
You can remove paging of SSRS report. to remove Paging by opening property window of report and set InteractiveSize's Height value to 0. it will remove paging of the report
You can repeat your Group header if there to another page as well so that user have idea about this data belongs to which group.

Create a Header Row in SSRS

I am trying to create a header row for a matrix in my SSRS report. Currently my matrix is configured as the following:
If I right+click to add a new row, it will insert a row above but I cannot merge the entire row of cells to form a single row, the grouping columns stay separate:
My work-around has been to add a text box above the matrix, but will not keep the the rows together in a page break:
Is it possible to add the header row? And if so, what would be a good way to accomplish this task?
I had the same issue! I wish they would let you merge across the row header; or add a new region of matrix called "title" .
My tablix also had dynamic columns, so I needed the width of the box on the top to expand and collapse with the rest of the table.
There are two ways you can handle it (that I know of)
1. Create a "parent" list object with two rows and insert the table in the second row
2. Put all the columns to the right of the row header
To solve my problem I tried both. First, I added the list with one column and two rows and I copied the entire table into the second row. The first row of the outer list is now centered and spans the entire table. It was messy because I had dynamic columns with a toggle for visibility. The outer list had to have columns that lined up with the visibility set to the same toggle. It was a messy work around because of that.
I decided to try the second method above and insert new columns on the other side of the row header.
The challenge is that row header group labels will repeat for each row... in your example RoleID would repeat down each detail row. I created an expression to only show when it was the first row of the group.
=iif(RowNumber("roleid_group") = 1,
max(Fields!roleID.Value,"roleid_group"),
"")
I used an expression to only show the border when it was the last row in the group:
=iif(RowNumber("roleid_group") = countrows("roleid_group"),"Solid","None")
This gives the illusion of a grouped row. Don't delete the row header columns (column 1 and 2) until you get it working because its hard to add them back.
Careful: This method though doesn't work well if the text of the row title needs to wrap. (The first row of the group will be wider --row height is set to can grow.)
If there is another way I would love to know. These are both somewhat tricky but get the job done.

Mixing detail rows in the middle of grouped rows

I have a report that need to show rows grouped by some criteria, let's say SubjectId.
But, final report preview need to looks like table below:
Little explanation:
Rows 11 and 12 belongs to group 1, and I need to put those 'Details rows' in the middle of table and after those two columns, I need to continue with group data, and that method would be valid for any group in table.
Everything would be easy if those two details columns are last two columns, but I have problem to get preview from picture if those columns are in the middle.
I'm not sure you can do this.
You could get something similar by just adding your Gender column at the end and then setting the HideDuplicates property of the textbox top True but that will not allow centering etc.
This was the output I got after applying the above.
I've used Category twice just as an illustration (that it belongs inside the row group)

Add "COUNT" column in SSRS in place of details rows

Apologies for this very newb-like question. I have some detail data that I want to group... I have added three group by columns (LOB, Event Classification, Assigned) to my table and want to add a third (Count) that counts the number of rows in the third (Assigned) group. At the moment I do this simply by adding a CountRows() column within the last (inner most) group. This is all I want to show. But I am forced to add a details column that I do not need (in this case I have "Amount"). Please see figure below:
Basically, I like what I have, except that I don't need that last "Amount" column. If I hide it, the row heights stay the same (i.e., their height is determined by the number of rows in the hidden column). I'm guessing I'm missing something pretty fundamental here. Any ideas?
From http://consulting.risualblogs.com/blog/2013/06/28/tablix-body-must-contain-at-least-one-column-ssrs/ I found:
Right click the last column, ‘Column Visibility’, ‘Hide’
2: On the ‘Row Groups’ or ‘Column Groups’, right click the ‘Details’ grouping and press delete, but only delete the grouping, not the associated rows and just delete the data in the last column.
It sounds like you need to place your values in the header of the last group defined which in your case is "Assigned". And remove the detail column. This should allow you to aggregate your values outward. The Count column would be a second group header for the Assigned group.