本主题介绍 Reporting Services 中的重大更改。这些更改可能会导致基于 SQL Server 早期版本的应用程序、脚本或功能无法继续使用。您在升级时,或在自定义脚本或报表中可能会遇到这些问题。有关详细信息,请参阅使用升级顾问来准备升级

报表服务器重大更改

报表生成器重大更改

报表处理重大更改

报表呈现重大更改

有关新功能的详细信息,请参阅新增功能 (Reporting Services)

 

SQL Server Reporting Services 中的重大更改_calc 报表服务器重大更改

本节介绍报表服务器和管理工具的重大更改。

 

功能

说明

IIS 和 ASP.NET

Reporting Services 不再依赖 IIS 提供对 SOAP 终结点的访问。URL 不再包括 IIS 中的网站。Reporting Services 直接使用 HTTP.SYS 在您为报表服务器 URL 定义的特定端口上侦听请求。

此增强功能对某些部署而言是重大更改:

  • 如果您具有包括查看 IIS 元数据或属性的脚本、工具或诊断过程,则现在必须开发新的方法以便管理报表服务器部署。

  • 如果您实施 ISAPI 筛选器来保障安全,则必须将 ISAPI 筛选器移至 ISA 服务器中,或创建一个可在 Reporting Services 中执行同一操作的新的 HTTP 模块。

  • 如果使用自定义虚拟目录设置,则可能无法在新的报表服务器实施中配置等效设置或 URL。在某些情况下,升级操作不能为报表服务器或报表管理器创建等效 URL。

升级顾问将通过检查 ISAPI 筛选器和自定义虚拟目录来检测重大更改。升级顾问无法检查所有可能的自定义项。您的安装可能会通过升级顾问检查,但仍可能会中断或产生意外错误。

Windows XP 上的端口冲突

在支持的 32 位 Windows XP SP2 的版本上,IIS 5.1 和 Reporting Services 不能使用相同的端口。不能将 IIS 5.1 和报表服务器都配置为侦听默认 HTTP 端口(端口 80)。

对于在 Web 服务器上承载的 Web 应用程序,IIS 5.1 不使用 HTTP.SYS。这意味着,对于通过同一端口传来的请求,没有公共队列管理,并且没有已注册且已保留 URL 的公共存储库。

该问题会导致在 Windows XP 上升级 SQL Server 2008Reporting Services 时出现以下行为:

  • 在 Windows XP 的 32 位版本上,如果将现有 SQL Server 2005Reporting Services 安装升级到 SQL Server 2008Reporting Services,会将报表服务器配置为侦听端口 8080。

  • 在 Windows XP 的 64 位版本上,如果将现有 SQL Server 2005Reporting Services 安装升级到 SQL Server 2008Reporting Services,会将报表服务器配置为侦听端口 80。

  • 如果执行 SQL Server 2008 内部版本到内部版本的升级,则报表服务器将继续侦听升级之前配置的相应端口。

升级完成后,如果希望报表服务器侦听其他端口,则可以使用 Reporting Services 配置工具来更改端口。

有关 SQL Server 2008 支持的 Windows 操作系统的详细信息,请参阅安装 SQL Server 2008 的硬件和软件要求

SQL Server Reporting Services 中的重大更改_calc_02注意
不再支持 IIS 5.0。SQL Server 2008 不支持 Windows 2000 服务器。

Reporting Services Windows Management Instrumentation (WMI) 提供程序

Reporting Services Windows Management Instrumentation (WMI) 提供程序与以前的版本不兼容。新的版本包括其他方法来支持 URL 注册。由于报表服务器安装只能有一个版本的 Reporting Services WMI 提供程序,因此此版本将替代以前的版本。此更改表示针对某些部署而进行的重大更改。如果创建了调用 WMI 提供程序的脚本或工具,则必须修订代码以使用新版本。有关详细信息,请参阅 Reporting Services WMI 提供程序

此更改还会阻止用户通过指定要连接的 <server_name>\<instance_name> 格式来与 SQL Server Management Studio 中的 SQL Server 2005 实例建立连接。用户必须改为键入要连接的报表服务器 URL。

服务与应用程序合并

报表服务器 Web 服务、报表管理器和后台处理应用程序都合并到一个服务中。您不能单独启动或停止它们。

Reporting Services 配置文件

Reporting Services 配置文件也进行合并。RSReportServer.config 文件是报表管理器和报表服务器 Web 服务的主配置文件。RSWebApplication.config 文件已过时。以下 RSWebApplication.config 设置已被移到 RSReportServer.config 文件:

  • ReportServerUrl

  • ReportServerExternalUrl

  • ReportBuilderTrustLevel

  • 传递扩展的 DeliveryUI 设置

  • DisplayErrorLink

以下设置已过时,不再使用:

  • ReportServerVirtualDirectory

  • MaxActiveReqForOneUser

如果在以前的安装中修改 RSWebApplication.config 文件,则在升级到 SQL Server 2008 时不会删除该文件。您应手动删除该文件,在本版本中,该文件内的所有设置都将被忽略。

Reporting Services 跟踪日志

ReportServerService_<时间戳>.log 是运行在该服务中的所有应用程序的主跟踪日志。以下文件已过时,在 SQL Server 2008 中不再创建:ReportServerWebApp_<时间戳>.log、ReportServer_<时间戳>.log 和 ReportServerService_main_<时间戳>.log。

Reporting Services 配置工具

Reporting Services 配置工具不再支持“升级数据库”或“授予权限”等功能,这些功能允许通过独立的操作来进行升级或授予权限,或生成用于执行这些任务的脚本模板。在此版本中,升级和数据库权限都作为内部操作来处理。

SQL Server Management Studio

在 Management Studio 中,已将 Home 文件夹从该版本中删除。您不能查看、管理、分发或保护 Management Studio 中的报表服务器内容。

报表管理器

在报表管理器中,已从“站点设置”中删除以下链接:配置项级角色定义、配置系统级角色定义、管理作业。报表管理器不再支持创建、修改或删除角色定义的功能。您必须使用 Management Studio 管理属于特定角色的任务。同样,作业管理已从报表管理器移动到 Management Studio。

电子邮件订阅

报表服务器或远程 SMTP 服务器升级到 Windows Vista 或 Windows Server 2008 时,对于“发件人”“收件人”“抄送”“密件抄送”以及“答复”字段中的电子邮件别名,无法进行电子邮件订阅。

发生此问题的原因在于,Windows Server 2003 包含一个可将别名解析为其完整的电子邮件地址的功能。Reporting Services 依赖该功能允许使用电子邮件别名而不是完整的电子邮件地址。但是,为帮助筛选出错误的电子邮件地址,Windows Vista 和 Windows Server 2008 不包含此功能。若要解决此问题,您必须在配置中配置 DefaultHostName 属性。有关解决此问题的信息,请参阅 Microsoft 知识库文章 945601:“SQL Server 2005Reporting Services e-mail subscriptions do not work in Windows Vista and in Windows Server 2008 if you use aliases as e-mail addresses”(将别名用作电子邮件地址时 SQL Server 2005Reporting Services 电子邮件订阅在 Windows Vista 和 Windows Server 2008 中不起作用)。

用于 SharePoint 技术的 SQL Server 2008Reporting Services 外接程序

在 SharePoint 集成模式下运行 SQL Server 2008 报表服务器实例时,用于 SharePoint 技术的 SQL Server 2008Reporting Services 外接程序提供了报表呈现、处理和管理功能以及数据驱动订阅。此外接程序下载文件包括报表查看器 Web 部件、Web 应用程序页,同时支持使用 Windows SharePoint Services (WSS) 或 Microsoft Office SharePoint Services (MOSS)。

用于 SharePoint 技术的 SQL Server 2008Reporting Services 外接程序需要 SQL Server 2008 报表服务器实例,因为早期版本的 SQL Server 不支持此外接程序。如果您使用 SQL Server 2008 之前版本的报表服务器,然后安装或升级到用于 SharePoint 技术的 SQL Server 2008Reporting Services 外接程序,则该报表服务器将无法按预期方式正常工作。例如,您将无法使用“授予数据库访问权限”页配置数据库访问,也无法使用 SharePoint 产品或技术呈现报表。若要解决此问题,则必须将报表服务器实例升级到 SQL Server 2008,否则必须卸载用于 SharePoint 技术的 SQL Server 2008Reporting Services 外接程序,然后重新安装用于 SharePoint 技术的 SQL Server 2005Reporting Services 外接程序。

有关用于 SharePoint 技术的 SQL Server 2008Reporting Services 外接程序的详细信息,请参阅 Microsoft SQL Server 2008 Reporting Services Add-in Readme(Microsoft SQL Server 2008 Reporting Services 外接程序自述文件)。

基本身份验证

在 SQL Server 2008Reporting Services 中,基本身份验证仅支持 NETWORK 和 NETWORK_CLEARTEXT 登录类型,而不支持 Interactive 和 BATCH 登录类型。

 

SQL Server Reporting Services 中的重大更改_calc 报表生成器重大更改

本节介绍对报表生成器的重大更改。

报表生成器只在完全信任模式下运行

在以本机模式运行的 Reporting Services 早期版本中,SQL Server 2005 报表生成器可使用以下 URL 来启动:

  • 完全信任   例如,http://<服务器名>/reportserver/reportbuilder/reportbuilder.application

  • 部分信任   例如, http://<服务器名>/reportserver/reportbuilder/reportbuilderlocalintranet.application

对于这两个 URL,<服务器名> 是指定报表服务器的计算机的名称。对于这两个 URL,reportserver 是报表服务器实例的名称。

在此版本中,您必须使用完全信任 URL 来运行报表生成器。当首次使用完全信任 URL 时,系统可能会提示您为应用程序授予更高级别的权限。

SQL Server Reporting Services 中的重大更改_calc_02 注意

如果未运行报表生成器,或者如果遇到错误,请与系统管理员联系。您可能不具有授予对此应用程序的更高级别信任程度所需的权限。

首次授予这些权限后,不必再次设置这些权限。

在此版本中,如果使用部分信任 URL,则当打开或保存报表或者切换报表服务器时,会出现下列错误消息:

“失败。处理您的请求时出错。保存您的报表,然后重新启动应用程序。”

 

SQL Server Reporting Services 中的重大更改_calc 报表处理重大更改

此版本通过提供按需报表处理,从根本上更改了报表处理体系结构。按需报表处理极大地减少了报表服务器上的内存使用。

将十进制格式应用到浮点值

不支持将浮点值转换为 .NET Framework 自定义格式“D”(十进制)。在 Reporting Services 的早期版本中,对于此情况不生成错误。

RDL 升级重大更改

升级现有报表时,将不支持下列 RDL 元素:

  • RDL 中的对象标识符不能超过 256 个字符

    RDL 中对象的标识符(例如,textboxID)先前不受长度限制。在此版本中,对象标识符的长度最多为 256 个字符。标识符仍然必须符合 CLS。

只为最后一个请求保存交互信息

在 Reporting Services 的早期版本中,快照保存了所有可能的交互选择组合,例如钻取信息和切换选择。您可以查看报表的第五页,但通过跟踪切换的正确 ID,可以通过编程方式切换第一页的项目。

在 SQL Server 2008 中,仅为最后一个呈现请求生成和保存交互信息。您不能先查看某一页,然后以编程方式切换到另一页中的项。只能切换当前报表页上的钻取项目。

报表对象模型命名空间更改

在此版本中,报表对象模型命名空间已发生更改。此命名空间提供从自定义代码到类似 FieldsParameters 和 ReportItems 的全局集合的只读访问。如果现有自定义代码显式使用对早期命名空间的完全限定引用,则此更改是一项重大更改。

建议不要使用完全限定引用来从代码访问内置集合。通过非显式指定命名空间,自定义代码引用可解析为当前安装的 Reporting Services 版本的报表对象模型版本。

例如,在 SQL Server 2005 Reporting Services 中,以下两个示例将对参数Microsoft.ReportingServices.ReportProcessing.ReportObjectModel.Parameter 的完全限定引用与对参数 Parameter 的默认引用的使用进行比较,以便将报表参数传递给返回报表参数标签的自定义函数。

不建议使用下面的示例。该示例显示了报表参数的完全限定引用。建议使用第二个示例,它可显示针对某报表参数的默认命名空间引用。

DO NOT USE FULLY QUALIFIED NAMESPACE REFERENCES FOR RUN-TIME COLLECTIONS

Public Function ShowParams(ByVal reportparameter As _

Microsoft.ReportingServices.ReportProcessing.ReportObjectModel.Parameter) _

As String

Return reportparameter.Label

End Function

下面的示例中显示了推荐的访问运行时集合的方法:

Public Function ShowParams(ByVal reportparameter As Parameter) _

As String

Return reportparameter.Label

End Function

 

SQL Server Reporting Services 中的重大更改_calc 报表呈现重大更改

报表呈现体系结构在此版本中发生了根本性的更改,可以为在不同呈现器中的分页和布局提供更一致的呈现效果。

新呈现对象模型和一致分页

对于 SQL Server 2008,呈现对象模型 (ROM) 已更改。不再支持早期版本的呈现对象模型。不支持从多线程呈现扩展插件中访问呈现对象模型(以及从多个线程切换上下文)。

新的 ROM 使呈现页的规则更加一致。有关详细信息,请参阅了解 Reporting Services 中的分页方式

重新设计的 CSV 数据呈现器

在 Reporting Services 的早期版本中,当将报表导出为 CSV 文件格式时,数据格式保留为报表页上显示的数据格式。对于矩阵数据区域,由此产生的数据格式不便于导入到其他应用程序以继续使用数据。

在此版本中,将报表导出为 CSV 文件时,可以在两种支持的格式之间进行选择:“默认”模式和“兼容”模式。默认模式针对 Excel 进行了优化。兼容模式针对第三方应用程序进行了优化。有关详细信息,请参阅导出到 CSV 文件

早期格式的 CSV 文件已不再使用。但是,对于不使用矩阵数据区域的报表,可以使用兼容模式获取最接近于早期 CSV 文件格式的文件格式。

在页眉和页脚中与条件可见性聚合

在 Reporting Services 的早期版本中,不同呈现器使用不同的规则来确定应将哪些带有条件可见性的项包含在报表页中。例如,不对打印报表中的隐藏项执行聚合计算,但是对使用浏览器或在 Excel 中查看的报表中的隐藏项执行聚合计算。

在此版本中,所有呈现器均使用相同的规则集来确定应将哪些项包含在报表页中。

Excel 中不支持公式

在 Reporting Services 的早期版本中,对 RDL 格式的表达式转换为 Microsoft Excel 公式的支持是有限的。在此版本中,当将报表导出到 Excel 时,RDL 表达式不会转换为 Excel 公式。

重叠项

在 Reporting Services 的早期版本中,如果报表在报表设计图面上有重叠项,则发布报表时会生成一条警告(“并非所有呈现器都支持重叠的报表项。”),但是报表项仍然保留在设计图面中的原始位置。在 SQL Server 2008 中,当查看报表或将报表导出到不支持重叠项的呈现器中时,报表项将移动到正确的重叠边界。有关详细信息,请参阅了解呈现行为