XML 连接类型 (SSRS)
若要在报表中包含来自 XML 数据源的数据,则必须拥有一个基于 XML 类型的报表数据源的数据集。此内置数据源类型基于 XML 数据扩展插件。使用此数据源类型可连接到 XML 文档、Web 服务、或查询中嵌入的 XML 并从中检索数据。
此数据扩展插件支持参数和与连接字符串分开管理的凭据。
使用本主题中的信息可以生成数据源。有关分步说明,请参阅如何添加和验证数据连接或数据源(Report Builder 3.0 和 SSRS)。
本文内容
连接字符串
凭据
查询
参数
备注
操作指南主题
相关章节
连接字符串
连接字符串必须为指向 Web 服务、基于 Web 的应用程序或可通过 HTTP 使用的 XML 文档的 URL。XML 文档必须具有 XML 扩展名。还可以对数据集查询中嵌入的 XML 数据使用空连接字符串。
下面的示例对 Web 服务器和 XML 文档的连接字符串语法分别进行了说明。不支持 file:// 协议。
XML 文档类型 |
连接字符串示例 |
---|---|
Web 服务 |
http://adventure-works.com/results.aspx |
XML 文档 |
https://localhost/XML/Customers.xml |
嵌入的 XML 文档 |
空 |
有关连接字符串示例的详细信息,请参阅Report Builder 3.0 中的数据连接、数据源和连接字符串。
凭据
执行以下操作时需要凭据:运行查询、本地预览报表以及从报表服务器预览报表。
报表发布后,您可能需要更改数据源的凭据,以使报表在报表服务器上运行时,用于检索数据的权限有效。
在报表创作客户端,可以使用下列选项指定凭据:
当前 Windows 用户(也称为集成安全性)。
不需要提供任何凭据。如果选择不使用任何凭据,则将使用匿名访问。请确保您已为报表服务器定义了无人参与的执行帐户以连接到外部数据源。XML 数据处理扩展插件不会将凭据传递到目标 URL 或 Web 服务;只有在定义了无人参与的执行帐户之后,连接才会成功。有关详细信息,请参阅 msdn.microsoft.com 上 SQL Server联机丛书中的 Reporting Services 文档的配置无人参与的执行帐户部分。
不支持存储的凭据和提示的凭据。注意,如果禁用 Windows 集成安全性,则无法使用它来检索数据。如果指定了存储凭据或提示凭据,则会在执行时发生错误。
有关详细信息,请参阅数据连接、数据源和连接字符串 (SSRS) 或在 Report Builder 3.0 中指定凭据。
返回页首
查询
查询指定了要为报表数据集检索哪些数据。查询的结果集中的列填充数据集的字段集合。报表仅处理查询检索的第一个结果集。
必须使用基于文本的查询设计器创建查询。查询必须返回 XML 数据。
有关基于文本的查询设计器的详细信息,请参阅基于文本的查询设计器用户界面 (Report Builder 3.0)。
下表中显示当数据源为 XML 类型时数据集查询的可能值。
数据集查询 |
说明 |
---|---|
空 |
使用空查询创建默认结果集。默认查询是通过读取数据源并遍历到 XML 节点层次结构的第一个叶集合来创建的。结果集包括具有文本值的所有节点以及沿该路径的所有节点属性。结果集中的列将映射到数据集的字段。 |
元素路径 |
指定在从数据源中检索 XML 数据时要使用的节点序列。 |
XML 查询元素 |
具有以下可选元素的 XML 查询规范。
XML 数据源必需的 XML 元素可选的 XML 元素
对于 Web 服务 <Method Namespace= "命名空间" Name="MethodName" /> -- or -- <SoapAction> soap 操作 </SoapAction> <ElementPath> 元素路径 </ElementPath> <Method Namespace= "命名空间" Name="MethodName" /> -- or -- <SoapAction> soap 操作 </SoapAction>
对于 XML 文档 <ElementPath> 元素路径 </ElementPath>
对于嵌入的 XML 文档 <XmlData> 内部 XML </XmlData> <ElementPath> 元素路径 </ElementPath> -- or -- <ElementPath IgnoreNamespaces="true"> 元素路径 </ElementPath>
|
有关查询语法的详细信息,请参阅 msdn.microsoft.com 上 SQL Server联机丛书中的 Reporting Services 文档的用于指定 XML 报表数据的 XML 查询语法 (SSRS)部分。
有关示例,请参阅 Reporting Services: Using XML and Web Service Data Sources(Reporting Services:使用 XML 和 Web 服务数据源)。
检索 XML Web 服务数据的要求
XML 数据处理扩展插件不能检测架构。因此,您必须通过某种方式来发现哪些 SOAP 方法将检索所需数据。您还必须了解 Web 服务用于其数据的寻址方案或命名空间。
对于 Web 服务,可以提供用于指定调用方法或 SOAP 操作的 <Query> 元素。如果 XML 数据源具有可产生要用于报表的数据的层次结构,则可以将查询留空并使用默认查询。查询运行时检索的 XML 元素节点值和属性将映射到在报表中使用的数据集字段。
检索 XML 文档数据的要求
使用 http 协议时,服务器必须返回 XML 数据,或者 XML 数据必须嵌入 XML Query 元素中。如果您使用 http 协议直接引用 XML 文档,则文档的扩展名必须为 .xml。
您必须了解如何创建 XML 查询来检索所需的所有数据。如果不指定元素路径,则默认的 XML 文档分析行为是选择 XML 文档中指向叶节点集合的第一个可用路径。如果 XML 文档包括指向其他同级叶节点集合的其他路径,则除非在查询中指定一个路径,否则将忽略这些节点。
可以使用与 XQuery 类似的 XML 语法提供元素路径。
有关详细信息,请参阅 msdn.microsoft.com 上 SQL Server联机丛书中的 Reporting Services 文档的 用于指定 XML 报表数据的元素路径语法 (SSRS)部分。
备注
XML 数据扩展插件支持基于 XML 数据(表格格式且不分层)生成报表。有关详细信息,请参阅从外部数据源中添加数据 (SSRS)。
不提供从 SQL Server 数据库检索 XML 文档的内置支持。
返回页首
操作指南主题
本节包含使用数据连接、数据源和数据集的分步说明。
如何添加和验证数据连接或数据源(Report Builder 3.0 和 SSRS)
如何创建共享数据集或嵌入数据集 (Report Builder 3.0 和 SSRS)
如何向数据集添加筛选器(Report Builder 3.0 和 SSRS)
返回页首
相关章节
文档中的这些章节提供有关报表数据的深入概念性信息,以及有关如何定义、自定义和使用与数据相关的报表部件的步骤信息。
向报表添加数据(Report Builder 3.0 和 SSRS)
提供访问报表数据的概述。Report Builder 3.0 中的数据连接、数据源和连接字符串
提供有关数据连接和数据源的信息。创建和添加数据集(Report Builder 3.0 和 SSRS)
提供有关嵌入数据集和共享数据集的信息。使用报表数据集中的字段(Report Builder 3.0 和 SSRS)
提供有关查询生成的数据集字段集合的信息。SQL Server联机丛书中的 Reporting Services 文档的“Reporting Services 支持的数据源 (SSRS)”部分。
提供有关每个数据扩展插件的平台和版本支持的详细信息。
返回页首