This documentation is archived and is not being maintained.

Controlling Report Pagination

To control pagination, you specify page-related properties in the report definition. Each rendering extension varies in how it supports page properties and whether it supports pagination altogether. The same report will paginate differently depending on which rendering extension you use to view it. The following list summarizes pagination behavior for the different rendering extensions:

  • PDF and Image rendering extensions are page-oriented formats. As a result, you can set properties to precisely control how pages will break for reports viewed in PDF or Image (TIFF) formats.
  • HTML and Excel use soft page breaks (or logical page breaks) that are calculated at run time. HTML pages are calculated based on the number of rows and columns that are returned for the report. Excel pages calculated as worksheets in the same workbook. If a workbook contains four worksheets, each worksheet is considered a single page.
    The HTML and Excel rendering extensions are not oriented to physical pages. Furthermore, the HTML rendering extension is interactive, meaning that user actions in a report can trigger additional processing that causes a report to expand horizontally or vertically to accommodate additional content. You cannot precisely control how reports viewed through these rendering extensions will paginate if the report contains interactive features.
  • XML and CSV do not support pagination. Page-related properties that you specify in a report are ignored when you view a report in these formats.

Page breaks determine how content is fitted to a report page. You can set page breaks to occur before or after report items by setting properties on those items.

You can add page breaks at the beginning or the end of a rectangle, table, matrix, list, chart, or group. By default, report items do not have page breaks. To add a page break to the beginning or end of an item, change the PageBreakAtEnd or PageBreakAtStart property for the item. For more information, see How to: Add a Page Break (Report Designer).

Page breaks also occur automatically for page-oriented rendering extensions (such as PDF and Image) that enforce a uniform page size across the entire report. The following properties are used to specify page breaks based on page size:

  • PageHeight and PageWidth properties are used by the PDF and Image rendering extensions to establish the regular occurrence of page breaks based on a physical measurement.
  • InteractiveHeight and InteractiveWidth are used by the HTML rendering extension to provide the equivalent of PageHeight and PageWidth. Because the HTML rendering extension dynamically resizes a report to accommodate drilldown, drillthrough, and show/hide features, the report server uses different properties to support pagination on dynamic pages.
The width of a report can be greater than the width of the page. If a report that is wider than the specified page size is rendered by a rendering extension that supports page size, the resulting report may flow horizontally across multiple pages. If you have designed a report to be one page wide, but it renders across multiple pages, check that the width of the report is not larger than the page width.

Reports that are rendered in HTML include default properties that create soft page breaks when the report is processed. These page breaks improve the performance of large reports by allowing the report server to render and display the first report page while the rest of the pages are rendered in the background. This allows a user to begin viewing the initial pages of the report while waiting for additional pages to become available.

Soft page breaks are specified through InteractiveHeight and InteractiveWidth. Soft page breaks are placed on a page using an estimated page size, which makes the size of the reports less exact than reports produced by a rendering extension that supports page size. Soft page breaks are calculated at run time by the report server. Although it is not recommended, you can disable soft page breaks by setting InteractiveHeight to 0.