Upgrading Reports

备注

For SQL Server 2008 R2, there have been no changes to the content that is listed in this topic.

SQL Server 2008 introduces changes to the Report Definition Language (RDL), the report object model, and the rendering object model that affect reports created in earlier versions of the software. When you upgrade a SQL Server 2005 Reporting Services installation to a SQL Server 2008 Reporting Services installation, existing reports and snapshots that have been uploaded to a report server are automatically upgraded to the new schema the first time they are processed. If a report cannot be automatically upgraded, the report is processed using the backward-compatibility mode.

Existing report definition (.rdl) files are automatically upgraded when you open them in Report Designer in Business Intelligence Development Studio.

备注

For more information about the new RDL features, such as the Tablix data region or the revised Chart component, see What's New (Reporting Services).

After you upgrade a report, you might notice additional errors, warnings, and messages. This is the result of changes to the internal report object model and processing components, which cause messages to appear when underlying problems in the report are detected. For more information, see Reporting Services Backward Compatibility.

Versions Supported by Upgrade

Reports that were created in any previous version of Reporting Services can be upgraded. This includes the following versions:

  • SQL Server 2000

  • SQL Server 2000 with Service Pack 1

  • SQL Server 2000 with Service Pack 2

  • SQL Server 2005

  • SQL Server 2005 with Service Pack 1

  • SQL Server 2005 with Service Pack 2

  • SQL Server 2008

  • SQL Server 2008 with Service Pack 1

Report Definition (.rdl) Files and Report Designer

A report definition file includes a reference to the RDL namespace that specifies the version of the report definition schema that is used to validate the rdl file.

In the SQL Server 2008 R2 version of Business Intelligence Development Studio, you can work with both SQL Server 2008 R2 and SQL Server 2008 versions of report definitions and Report Server projects. You can edit, preview, and deploy reports of either version.

If you open, update, and then save a SQL Server 2008 report definition, it is saved as SQL Server 2008 report definition unless you added features that are new SQL Server 2008 R2. In such a case, the report definition is saved as a SQL Server 2008 R2report definition to ensure that the report definition is valid and the report will run. For more information, see Upgrading and Reverting Reports in Business Intelligence Development Studio.

When you open an .rdl file in Report Designer in Business Intelligence Development Studio that was created for the SQL Server 2000 or SQL Server 2005, namespace, Report Designer automatically creates a backup file and upgrades the report to the current namespace. If you save the upgraded report definition, you have saved the converted .rdl file. As soon as you save it, you cannot open it in earlier versions of Report Designer. This is the only way you can upgrade these versions of report definition files.

You can deploy an .rdl file created in an earlier version of Reporting Services to a SQL Server 2008 report server and it is automatically upgraded on first use. The report server stores the report definition file in the original format. The report is automatically upgraded the first time it is viewed, but the stored report definition file remains unchanged.

备注

You cannot publish or upload a report that has the SQL Server 2008 report definition namespace to a SQL Server 2000 report server or SQL Server 2005 report server. Likewise, you cannot publish or upload a report that has the SQL Server 2008 R2 report definition namespace to earlier versions of a SQL Server report server.

To identify the current RDL schema for a report, for a report server, or for Report Designer, see How to: Identify the Report Schema Version.

Report Server Projects

You can add and open SQL Server 2008 Report Server projects to solutions that you created using the SQL Server 2008 R2 version of Business Intelligence Development Studio. The Report Server project is automatically upgraded. However, if you save the SQL Server 2008 Report Server project, it is saved as a SQL Server 2008 R2 Report Server project and you can no longer open it in the SQL Server 2008 version of Business Intelligence Development Studio. For more information about opening, saving, and publishing Report Server projects, see Upgrading and Reverting Reports in Business Intelligence Development Studio.

Published Reports and Report Snapshots

On first use, the report server tries to upgrade existing published reports and report snapshots to the new report definition schema, requiring no specific action on your part. When a user views a report or a report snapshot, or when the report server processes a subscription, the upgrading attempt occurs. The report definition is not replaced but continues to be stored on the SQL Server 2008 report server in its original schema. If a report cannot be upgraded, the report runs in backward-compatibility mode.

Backward-Compatibility Mode

A report that is successfully upgraded is processed by the SQL Server 2008 Reporting Services report processor. A report that cannot be upgraded is processed by the SQL Server 2005 Reporting Services report processor in backward-compatibility mode. A report cannot be processed by both report processors.

On first use, a report is either successfully upgraded or marked for backward compatibility.

Only the SQL Server 2008 Reporting Services report processor supports new features such as on-demand paging, Tablix and Gauge data regions, and enhanced Chart data regions. If a report cannot be upgraded, you can still view the rendered report but the new features are not available. To take advantage of the new features, a report must be successfully upgraded.

Upgrading a Report with Subreports

When a report contains subreports, one of four possible states can occur during upgrade:

  • The main report and all subreports can be successfully upgraded. They are processed by the SQL Server 2008 Reporting Services report processor.

  • The main report and all subreports cannot be upgraded. They are processed by the SQL Server 2005 Reporting Services report processor.

  • The main report can be upgraded but one or more subreports cannot be upgraded. The main report is processed by the SQL Server 2008 Reporting Services report processor, but the rendered report shows the message "Error: Subreport could not be processed" in the location where the subreport that could not be upgraded would appear.

  • The main report cannot be upgraded but one or more subreports can be upgraded. The main report is processed by the SQL Server 2008 Reporting Services report processor, but the rendered report shows the message "Error: Subreport could not be processed" in the location where the subreport would appear.

If you see the error "Error: Subreport could not be processed", you must change the definition of the main report or the subreport so that the reports can be processed by the same version of the report processor.

Drillthrough reports do not have this limitation because they are processed as independent reports.

Upgrading a Report with Custom Report Items

SQL Server 2005 Reporting Services reports might contain custom report items (CRIs) provided by third-party software vendors and installed by the system administrator on the report authoring computer and the report server. Reports that contain CRIs can be upgraded in the following ways:

  • A SQL Server 2005 Reporting Services report server is upgraded to a SQL Server 2008 Reporting Services report server. Published reports on the report server are automatically upgraded on first use.

  • A SQL Server 2005 Reporting Services report is uploaded to a SQL Server 2008 Reporting Services report server. The report is automatically upgraded on first use.

  • A SQL Server 2005 Reporting Services report is opened in Report Designer in Business Intelligence Development Studio. A backup copy of the original report is created. One of the following two cases occurs:

    1. All CRIs in the report have no unsupported features. The CRIs are converted to report items in the new report definition schema, so the entire report is upgraded. If you save the file, it is saved in the current RDL namespace.

    2. One or more CRIs in the report have unsupported features. A dialog box prompts the user whether to convert the CRIs are leave them unchanged.

    For more information, see Opening a Report in Report Designer later in this topic.

For information about identifying the current RDL namespace for a report server, BI Development Studio, or a report, see How to: Identify the Report Schema Version.

Upgrading Reports on a Report Server

The first time a SQL Server 2005 Reporting Services report runs on a report server that has been upgraded to a SQL Server 2008 Reporting Services report server, the report is automatically upgraded to the current report definition namespace supported by the report server. The report could have existed on the report server before the upgrade, or the report could have been uploaded via Report Manager or published to the report server from Report Designer in SQL Server 2005 BI Development Studio.

The following table lists the upgrade action that is performed by the report server for specific types of CRIs in a report.

CRI type

Report Server upgrade action

Third-party CRIs

Upgrade not performed.

Processed by the SQL Server 2005 Reporting Services report processor.

Dundas 2005 Chart CRI with no unsupported features

Upgraded to the latest RDL schema. All Dundas 2005 Chart CRIs are converted to Sql Server 2008 Reporting Services chart data regions.

Processed by the SQL Server 2008 Reporting Services report processor.

Dundas 2005 Gauge CRI with no unsupported features

Upgraded to the latest RDL schema. All Dundas 2005 Gauge CRIs are converted to Sql Server 2008 Reporting Services gauge data regions.

Processed by the SQL Server 2008 Reporting Services report processor.

Dundas 2005 Chart CRI with unsupported features

Upgrade not performed.

Processed by the SQL Server 2005 Reporting Services report processor.

Dundas 2005 Gauge CRI with unsupported features

Upgrade not performed.

Processed by the SQL Server 2005 Reporting Services report processor.

Opening a Report with CRIs in Report Designer

When you open a SQL Server 2005 Reporting Services report with CRIs in Report Designer in SQL Server 2008 Business Intelligence Development Studio, the report will be upgraded to the new report definition schema. Depending on the CRIs contained in the report, one of the following actions will take place:

  • Third-party CRIs detected. If the version of the CRI that is installed on the report authoring computer is not compatible with the new RDL schema, the design surface shows a text box with a red X. You must contact your system administrator to install new versions of the CRI from third-party vendors that are compatible with the new RDL schema.

  • Dundas 2005 Chart or Gauge CRIs detected and all instances contain supported functionality. All Dundas 2005 Chart and Gauge CRIs are converted to the Reporting Services Chart and Gauge report items that you see on the Toolbox. These are known as native chart and gauge report items.

  • Dundas 2005 Chart or Gauge CRIs are detected and any instance has unsupported functionality. Unsupported functionality is described after this section. You can choose whether to convert all CRIs to native report items.

    • If you convert them, the report is upgraded to the new RDL schema and Dundas 2005 Chart and Gauge CRIs are converted to the corresponding native Chart and Gauge report items, but unsupported functionality is removed. In the rendered report, you might see differences in the way the CRI displays.

    • If you choose not to convert them, the report is upgraded to the new RDL schema but the CRIs are treated as third-party CRIs. You must work with the system administrator and the third-party vendors to install new CRIs that are compatible with the new report schema. If the new CRIs are not available, the report displays a text box with a red X in Report Designer.

Saving a report after it is upgraded in the report authoring environment is the only way to upgrade an existing report to the new report definition schema.

Unsupported Dundas 2005 Chart Custom Report Item Functionality

Unsupported functionality for Dundas 2005 Chart CRI includes the following features:

  • Annotations.

  • Custom legend items.

  • Custom attributes with the following names:

    • CUSTOM_CODE_CS

    • CUSTOM_CODE_VB

    • CUSTOM_CODE_COMPILED_ASSEMBLY

      For example, if your .rdl file contains the following section, you will need to remove it before upgrading:

      <CustomProperty>
       <Name>CUSTOM_CODE_CS</Name>
       <Value>dXNpWERwegfdfgiobxxl3bmc… </Value>
      </CustomProperty>
      

Unsupported Dundas 2005 Gauge Custom Report Item Functionality

Unsupported functionality for Dundas 2005 Gauge CRI includes the following features:

  • Numeric indicators.

  • State indicators.

  • Custom Images.