Rendering Behaviors (Report Builder and SSRS). 7 minutes to read. Contributors.
In this article Depending on the renderer you select, certain rules are applied to the report body and its contents when rendering a report. How report items fit together on a page is determined by the combination of these factors:.
Rendering rules. The width and height of report items. The size of the report body. The width and height of the page. Renderer-specific support for paging. This topic discusses the general rules that are applied by Reporting Services. For more information, see, and.
Note You can create and modify paginated report definition (.rdl) files in Report Builder and in Report Designer in SQL Server Data Tools. Each authoring environment provides different ways to create, open, and save reports and related items.
General Behaviors for HTML, MHTML, Word, and Excel (Soft Page-Break Renderers) Reports exported using HTML and MHTML formats are optimized for a computer screen-based experience where pages can be various lengths. Page breaks are inserted vertically only at approximate locations within the report body. These approximate locations are determined by the interactive height setting in the Properties pane.
For example, suppose the interactive height is set to 5 inches. When the report is rendered, the page height is approximately 5 inches in length. Word and Excel paginate based on logical page breaks and ignore the interactive height setting.
Note To determine how a report will appear in a soft page-break renderer, use Report Preview. The report appears as it would in a HTML, MHTML, Word, or Excel format. When exporting a report to HTML, MHTML, Word, or Excel, the following general rules are followed:. Logical page breaks, the page breaks that you explicitly insert, are applied to report items. For example, if you insert a page break between each group, they are applied when the report is rendered.
Jan 07, 2017 Fixes a character rendering issue that occurs when you render a PDF. The special characters are displayed incorrectly in. SQL Server 2008.
An approximate layout is created using the page height and the number of times that the report item appears. For example, if a text box is.5 inches in height and repeats five times in the report, 2.5 inches are reserved. Multiple soft page breaks are inserted based on the interactive height setting. To suppress in HTML and the ReportViewer controls, and control pagination only with explicit page breaks, set the interactive height value to 0 or an extremely large number. Note The interactive width setting is not used in the soft page break renderers. Report pages can grow to accommodate widows, orphans and report items that need to be kept together.
This means that the report can extend beyond the screen width and can be viewed by using slider bars. Pagination is applied to reports vertically only. Page margins are not applied. General Behaviors for PDF, Image, and Print (Hard Page-Break Renderers) Reports exported using PDF and Image are optimized for a book-like or printed experience where pages are a consistent size. Page breaks are inserted vertically and horizontally at specific locations within the report body. These specific locations are determined by the page width and page height settings. Note To determine how a report will appear in a hard page-break renderer, use Print Preview.
The report appears as it would in a PDF or Image format. Pages are numbered sequentially from left to right, then top to bottom. Logical page breaks, the page breaks that you explicitly insert, are applied to report items. These page breaks can cause report items to push other items to the next page. If a physical page break occurs through report items that must be kept together, the items that must be kept together are moved to the next page. Because of page size constraints, it may not be possible to keep all the items together or to repeat items.
If that occurs, the renderer might ignore certain rules for repeating with another item in order to allow the report item to fit on the page. If an item cannot be kept together, for example a text box that grows too large to fit within the vertical usable page area, then the item will be clipped at the physical page boundary and will continue on the next page. Pagination is applied to reports vertically and horizontally. Note The interactive width setting is not used in the hard page break renderers. Minimum Spacing Between Report Items Report items grow within the report body to accommodate their contents. For example, a matrix data region typically expands across and down the page when the report is rendered, and the height of a text box adjusts depending on the data returned from an expression. Renderers maintain the minimum space between report items that you define in the report layout.
When you place a report item adjacent to another on the report layout, the distance between the report items becomes the minimum distance that must be maintained as the report grows horizontally or vertically. For example, if you add a matrix data region to a report and then add a rectangle.25 inches to the right of the matrix, that space is maintained as the matrix grows.
Each item moves to the right to maintain the minimum distance from items that end to the left of it. Page Headers and Footers Page headers and footers appear at the top and bottom of each rendered page. You can format the page header and footer so that there is a border color, border style, and border width.
You can also add a background color or background image. These formatting options are all rendered, depending on the format that you choose. The following rules apply to page headers and footers when rendered in the HTML or MHTML rendering format. Note For information about how Excel renders headers and footers, see. For information about how Word renders headers and footers, see. When present, the header and footer is rendered at the top and bottom of every page within the usable page area. On pages where the header or footer is hidden, the height of the header or footer is still reserved within the usable page area, even though the header or footer is not rendered.
If the contents of the header or footer grows beyond the boundaries of the header or footer, the header or footer increases in size to accommodate the contents. The following rules apply to page headers and footers when rendered in the PDF or Image rendering format:. The header or footer is rendered at the top and bottom of every page within the usable page area. On pages where the header or footer is hidden, the height of the header or footer is still reserved within the usable page area, even though the header or footer is not rendered. The header and footer do not grow or shrink. They are rendered on every page at the height specified when you created the header or footer. Regardless of the number of columns within the report, there is only one header and footer per page.
If the contents of the header or footer grow beyond the boundaries of the header or footer, the contents are clipped. Headers and footers that are defined in the original RDL file are not rendered when the report is rendered as a subreport. Logical Page Breaks Logical page breaks are page breaks that you insert before or after report items or groups. Page breaks help to determine how the content is fitted to a report page for optimal viewing when rendering or exporting the report. The following rules apply when rendering logical page breaks:. Logical page breaks are ignored for report items that are constantly hidden and for report items where the visibility is controlled by clicking another report item. Logical page breaks are applied on conditionally visible items if they are currently visible at the time the report is rendered.
Space is preserved between the report item with the logical page break and its peer report items. Logical page breaks that are inserted before a report item push the report item down to the next page. The report item is rendered at the top of the next page. Logical page breaks defined on items in table or matrix cells are not kept. This does not apply to items in lists.
I am using SSRS 2008 R2 and rendering a report into word. My rdl has a table with 4 columns which simply expands over 4 pages. I want the table header to be repeated over all pages. This works fine for PDF rendering but not for word. Will the fix be made available in recent patch?
I understand, header is not repeating as there is single continuous long table and I need to add the dynamic page breaks on every page so that table splits over small tables every page. This dynamic page break will allow the headers to repeat. I did below: 1. Added a list box to my RDL and added groups expression: =Floor(Rownumber(nothing)/14), this how page break will be added after every 14 rows. Changed the page break property for group to insert page breaks.
Repeat row headers on each page set =true. Moved my table into this list box.
Now the it works as expected, gives me header repeated every page Problem: I have hard coded the row number i.e. My column 4 in table is text and large data that expands over 2-3 rows. In this case my dynamic page breaking fails. As my logic considers table rows not the total data rows. And I get wrong results, like a line getting expanded over next page, without headers, a page break after that and next page with new table row.
Question: Appreciate any suggestions/solution to take care of the word wrap. Hi SwatiSSRS, Sorry for the delay.
This is a known issue of Word rendering format in SSRS 2008 R2. The common workaround is to modify the Top/Bottom Margins to see if it works.
Another possible workaround is to add conditional page breaks to the specific group. However, in this way, the report layout will change.
For example, if we want to add page break to the Region group if the Region field is 'North America' or 'Europe', we can use the following steps:. Click the 'Region' group from the Row Groups pane, expand the 'Group' item from the Properties pane on the right of the Design surface. Expand the 'PageBreak' item, set the 'BreakLocation' to 'End', and set the 'Disabled' property based on the following expression: =iif(Fields!Region.Value='North America' or Fields!Region.Value='Europe',false,true) In this way, we can add page break to the specific instances of a group according to the layout of the report. The screenshot below is for your reference: Hope this helps. Regards, Mike Yin If you are user and have any feedback on our support quality, please send your feedback. Hi SwatiSSRS, Sorry for the delay. When we export a report to the Word format, the Word repaginates the entire report again based on the page size.
That way, repagination may cause page breaks to be inserted in locations where we did not intend to add them and, in some instances, may cause the exported report to have two successive page breaks in a row or add blank pages. To work around the issue, you can change Word's pagination by adjusting the page margins or adjust the expression which the list groups on. Reference: Regards, Mike Yin If you are user and have any feedback on our support quality, please send your feedback. Hi SwatiSSRS, Sorry for the delay. This is a known issue of Word rendering format in SSRS 2008 R2. The common workaround is to modify the Top/Bottom Margins to see if it works. Another possible workaround is to add conditional page breaks to the specific group.
However, in this way, the report layout will change. For example, if we want to add page break to the Region group if the Region field is 'North America' or 'Europe', we can use the following steps:. Click the 'Region' group from the Row Groups pane, expand the 'Group' item from the Properties pane on the right of the Design surface. Expand the 'PageBreak' item, set the 'BreakLocation' to 'End', and set the 'Disabled' property based on the following expression: =iif(Fields!Region.Value='North America' or Fields!Region.Value='Europe',false,true) In this way, we can add page break to the specific instances of a group according to the layout of the report. The screenshot below is for your reference: Hope this helps. Regards, Mike Yin If you are user and have any feedback on our support quality, please send your feedback.