Page break from subreport is missing from exported PDF - reporting-services

I'm stuck with SQL 2014 because reasons. I have a subreport with this structure:
The intention is to have a page break before each table of parts destined for the same warehouse. This works perfectly when I view the report in Report Builder or SSRS. But when I export to PDF, the break before the first warehouse is missing, as if I had selected BreakLocation "Between" instead of "Start."
Is this a known issue? What's the workaround?

I stumbled upon a workaround. I added a tiny row at the top of the subreport table, outside the group. The row simply contains an empty textbox. The row must not be hidden, but the textbox can be, so you could add some text to explain why it's there.
The rule seems to be that if the very first thing in a subreport is a page break, it will be discarded. But why this only affects PDF export remains a mystery.

Related

SSRS 2016 - multiple tablix on one report causes overlap when rendering

I have inherited an SSRS report which had an existing tablix on it - I want to add a further tablix below to display data from another data set as the format is very slightly different - each tablix displays a different kind of sales for a certain customer.
I have added the second tablix and the report seems fine within the report designer renderer, but when I access it via MS Edge directly from the URL the first tablix overlaps the second and obscures it from view.
I have set a page break at the end of the first tablix, and at the start of the second, and again in the designer renderer it works fine and pages, but in MS Edge it overlaps across the page break. In Chrome it renders OK.
The issue I have is I am displaying this SSRS report in a Web Browser Control on an access for an it renders just like it does in MS Edge so it looks screwed up.
It is like the first tablix just runs over into page 2 rather than making the extra content of itself page 2, and the second tablix then on page 3. I don't even really need the pages as ideally it would all be one long report with a vertical scroll, but this overlap issue means I have been trying to force it to split.
Any other way I can stop the first tablix obliterating the second one?
I had a similar problem recently (I found your question while searching for an answer). I didn't want to go to all the trouble of creating a sub report and eventually tracked down the cause of the issue for my case which may be the same as what you were experiencing.
The issue was that my first Tablix was setup with a height of 2.7cm. My second one's top was 2.66781cm. That caused both of them to overlap with each other when the report was rendered. When I changed the top of the second Tablix to 2.7cm the issue was resolved.

SSRS - Page Break - Subreport

I have a report with two subreports inside. The main report has keeptogether true and page break checked in a group. Both subreports has keeptogether false and no page break.
My environment is SSRS 2008 and VS 2013 (Reportviewer 11)
I got two (separate) issues:
the page break is not working when I display the reports in reportviewer in browser. But it works when I export it into pdf.
if the main+subreports cannot fit to one page. then it basically cut the main report and subreport into different page (even though
keeptogether in mainreport is true and subreport is false)
Is there someone that can suggest what is going on? Some post stated that this is a default behaviour, if yes, is there any workaround for this?
Thanks before!
The default DisplayMode of the ReportViewer is set on Normal, try changing this to PrintLayout.
myReportViewer.SetDisplayMode(DisplayMode.PrintLayout);
When the report content exceeds the maximum page size it will break to a new page, there is no way of stopping this, in the designer the property even says "Keep together on one page if possible".
As your description of your actual report isn't completely clear, I'll assume that your main report has some data above the two subreports that you wish to be kept together.
To achieve this wrap that data inside a new Rectangle and set the KeepTogether property on True.
If I misunderstood you in anyway, just let me know and i'll update my answer.

Dataset Field in Header/Footer disappears in PDF Export

I've been asked to make a small change to one of our RDLs. Essentially, I have some fields in my header/footer which pull information out of the resulting dataset (this is done by creating hidden textbox in the report body, then creating a textbox in the footer with its value set to ReportItems!txtHiddenMsg.Value).
Unfortunately, the message in the footer is dynamic: it displays a customerID and a custom "Thank you for your business" message in the customer's native language in the footer, and there are several customer IDs contained in the report, so the footer text actually changes from page to page. This means its not possible to hard code the text in the footer or bind it to a different dataset.
The report renders just fine in ReportViewer, but the fields disappear when exported to PDF. I don't know how to phrase this problem, so I apologize if this is worded awkardly:
How can I bind a field in the header/footer to a dataset field and without the field disappearing from the PDF export?
Unfortunately, the only solution that may work is aspose.pdf
PDF export appears to not detect the indirection.
My BI colleague tried this and found it better than the standard solution.
I did some detective work and found that several of our other reports bind columns to the header/footer, and they export just fine. It seems like my report is the exception rather than the norm.
Cause of the problem: The row containing my hidden textboxes was set to invisible (I did this so I wouldn't have to toggle the textboxes individually). It seems like there is a bug undocumented feature in the PDF export where it ignores text in invisible rows.
Solution: I made the row visible and set all of my textboxes to be invisible. Now the report outputs fine, and the export looks fine as well.
Try to use hidden/internal report parameter with default values set to read from dataset.

Subreports try and keep together leaving blank spots/pages

Reporting Services 2005
My layout is like this:
I have the mainreport which contains a table
This table has 3 groups it runs by, GrpLevel1, GrpLevel2, GrpLevel3
Sub-Reports are added to one of 3 groups and are executed passing that group key to the sub-report
So, a particular sub-report will run at GrpLevel1 and for every level2 it contains, the sub-reports under GrpLevel2 will run.
The problems I'm having are that the sub-reports want to jump to the next page leaving a gapping hole of white-space in the report.
If a sub-report contains a table with a bunch of data and it can not fit on 3/4s of a page (first page on report has report header on top 1/4), it will jump the whole thing to the next page leaving only a header, rather than printing what it can on the first page.
On the table I have "Keep Together" turned off.
I'm at a loss and about ready to set my cube on fire. Insight in to this would be greatly appreciated.
UPDATE ****************THIS HAS BEEN FIXED IN SSRS 2008 R2***********************
It has been fixed with (SQL Server) Reporting Services 2008 R2. You can now toggle the KeepTogether on Sub-Reports. Pagination looks a lot better.
Looks like there is no solution to this problem. The bug is aknowleged by microsoft, but its still not fixed in SSRS2008.
From the KB article (http://support.microsoft.com/kb/938943)
This behavior occurs because the
Subreport control has an implicit
KeepTogether property. By design, the
KeepTogether property tries to keep
content of a subreport on one page.
Because of this behavior, the report
engine creates blank space on the main
report if the subreport does not fit
on the same page as the main report.
Then, the report engine creates the
subreport on a new page.
The work around that they list is essentially 'don't use subreports'
I am not sure about the earlier version of SSRS, but I faced this same issue in SSRS 2008.
The solution is to change the Subreport property in Code.
Go to the solution explorer, right click on your report and click on "View Code".
Search for your Subreport.
Inside subreport tag you'll find "<KeepTogether>", which would be set to "true", change it to "false"
This property is not avaiable from designer and has to be changed from the actual report xml code.
right click of subreport and chose format subreport, then uncheck keep object together
Another way I got around this was to place the subreport in the report header. Of course that is very dependent on the report content and elminates any of the usefulness of subsequent sections but it did solve my problem of having a huge chunk of whitespace on the first page.
It took me a week to solve this one! But I did find a solution and happy to share it with you.
I had the exact same problem. In my main report, there is a Table that has 3 groups and 2 different subreports in each group. And these subreports had matrices. I believe regardless of matrices, subreports being placed inside group/detail bands within a table caused alot of unnecessary blank pages to be printed before, in between and after the sections. It was a pain the neck and I was thinking of removing the subreports but then it defeats the whole purpose of the report.
So finally, what fixed it was instead of placing the subreport in DETAIL bands of the groups in the table, place them in the Footer of the groups. Now I know this may change/affect the format of the report and may not fit in with your report purposes. But this fixed the issue for me. Another way of getting around the blank page issue was leaving the subreports wherever they are (detail or group bands), and moving OTHER detail bands into one Footer band. Essentially what needs to be kept in mind, is to reduce the number of detail/group bands inside the table. Limit the groupings and have minimum number of subreports within a table if you can manage that.
Hope this helps someone out there.
For SSRS 2008
If your subreports are in any group, you should go to group properties and switch the keep together property for that group(s) to false. This worked for me.

How do I shows column headers of main report on each page when subreport renders on more than one pages

I have few subreports in a sql main report(.rdl file) using VS/SSRS 2008.
The subreports start approximately on the middle of the page in the main report detail section. I have one group in main report, shows header information and pass one parameter - ReportID to each subreport.
I also have checked both:
Row Headers – “Repeat header rows on each page” and
Column Headers – “Repeat header columns on each page”
on General tab of Tablix properties of the main report.
If I have few detail lines in the subreport, so that all can be rendered on page one, everything is ok.
If I have more detail lines in the subreport so that it's not possible to print all on one page, the subreport renders from the fist page and moves on to page two, three and so on.
When I have more than one page of data in the subreport, it is also started on page one, and continues renders on second page and so on...
However, it doesn't show the main report's column/row headers on subsequent pages of the subreports?
I've noticed that when next item/ReportID starts in my main report group, it prints column header only on the first page but not any subsequent page and so on...
I also tried to check only ONE, either
Row Headers – “Repeat header rows on each page” OR
Column Headers – “Repeat header columns on each page”
on general tab of Tablix properties of the main report BUT didn’t work?
Any ideas how to print header info on each page when subreport has more than one page data?
Pagination is always fun in SSRS.
Have you looked at the page size/interactive of the subreport? This may stop the subreport paging, but I don't know if it's what you want.
An older article on pagination
And a newer one
Presently I am encountering the same problem. In a previous SSRS report we got it to work by putting our tablix inside a single-cell list item so that the headers were repeated. Now I am working on a different report, and when I try the same thing I'm getting this error:
[rsInvalidDetailDataGrouping] The tablix ‘tablixOpportunitySummary’ has a detail member with inner members. Detail members can only contain static inner members.
I've searched extensively, but this is the only link which indicates an known problem in SSRS. At the time of this post it contained 4 workarounds:
https://connect.microsoft.com/SQLServer/feedback/details/337720/katmai-reporting-services-2008-tablix-control-repeat-column-headers-does-not-work#
A little late, but I think this is what you are looking for:
You need to go to tablix properties > General and check the option Keep header visible while scrolling. Then go to column/row groups in the advanced mode, chose your static row and set the Fixed Data mode to True, Repeat on new page to True and Keep with group to After.
Here is probably the best reference: Here