XML 中的 RDL 元素和属性(报表生成器)
将报表另存为 XML 文件后,报表生成器需要将报表定义语言 (RDL) 转换为 XML。XML 导出选项将报表项保存为 XML 文档中的元素或属性。每个元素可能具有一组与其关联的属性或子元素。不同报表项具有不同的属性或元素。本主题讨论当另存为 XML 时 RDL 架构的变化情况。
Report
Report 是 XML 根节点。它包含的属性用于指定 XML 文档的架构信息和报表名称。
XML 根节点中指定的 XML 架构 (XSD) 如下所示:
<Report xmlns="SchemaName" xmlns:sxi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="SchemaName ReportURL&rs:ImageID=SchemaName" Name="ReportName">
下表对 XML 导出选项如何保存 Report RDL 元素中的属性和元素进行了说明:
RDL 属性 | 另存为 |
---|---|
Name |
根元素的 Name 属性。 |
Text Boxes
下表对 XML 导出选项如何保存文本框进行了说明。文本框的名称和值另存为元素还是属性取决于文本框的 DataElementStyle RDL 元素的值。
RDL 元素 | 另存为 |
---|---|
DataElementName |
文本框元素或属性的名称。如果未指定 DataElementName,则默认名称是 RDL 中的文本框的名称。 |
Value |
文本框中数据的值。 |
Table
下表对 XML 导出选项如何保存表进行了说明。表另存为元素。
RDL 元素 | 另存为 |
---|---|
DataElementName |
表元素的名称。如果未指定 DataElementName,则元素的名称是 RDL 中的表的名称。 |
TableGroup |
第一个 TableGroup 元素另存为表元素的一个子元素。每个后续 TableGroup 元素都另存为其前一个 TableGroup 元素的组实例的子元素。这样可以生成嵌套数据组。 |
Details |
最后一个 TableGroup 元素的每个组实例的子元素。如果没有表组,Details 将另存为表元素的子元素。 |
TableGroup
下表对 XML 导出选项如何保存表组进行了说明。表组另存为元素。
RDL 元素 | 另存为 |
---|---|
DataCollectionName (Grouping) |
表组元素的名称。如果未指定 DataCollectionName,则该元素的名称是 DataElementName 元素中指定的名称加上字符串“_Collection”。 |
DataElementName (Grouping) |
组实例元素的名称。组实例元素是表组元素的子元素。如果未指定 DataElementName,则该元素的名称是 RDL 中的分组的名称。 |
Header |
组头中的所有项都另存为组实例元素的子元素或属性。 |
Details
下表对 XML 导出选项如何保存 Details RDL 元素中的属性和元素进行了说明。Details 另存为元素。
RDL 元素 | 另存为 |
---|---|
DataCollectionName (Grouping) |
详细信息元素的名称。如果未指定 DataCollectionName,则该元素的名称是 DataElementName 元素中指定的名称加上字符串“_Collection”。如果 Details 没有分组,则元素的名称为 Detail_Collection。 |
DataElementName (Grouping) |
组实例元素的名称。组实例元素是详细信息元素的子元素。如果未指定 DataElementName,则该元素的名称是 RDL 中的分组的名称。如果 Details 没有分组,则元素的名称为 Detail。 |
DetailsRows |
详细信息行中的所有项都另存为组实例元素的子元素或属性。 |
Matrix
下表对 XML 导出选项如何保存矩阵进行了说明。矩阵另存为元素。
RDL 元素 | 另存为 |
---|---|
DataElementName |
矩阵元素的名称。如果未指定 DataElementName,则元素的名称是 RDL 中的矩阵的名称。 |
Corner |
角中的所有项都另存为矩阵元素的子元素或属性。 |
RowGrouping |
第一个 RowGrouping 元素另存为矩阵元素的一个子元素。每个后续 RowGrouping 元素都另存为其前一个 RowGrouping 元素的组实例的子元素。这样可以生成嵌套数据组。 |
ColumnGrouping |
第一个 ColumnGrouping 元素另存为最后一个 RowGrouping 元素的每个组实例的子元素。每个后续 ColumnGrouping 元素都另存为其前一个 ColumnGrouping 元素的组实例的子元素。 |
MatrixCell |
最后一个 ColumnGrouping 元素的每个组实例中的 Cell 子元素。矩阵单元中的所有项都另存为 Cell 元素的子元素或属性。 |
RowGrouping
下表对 XML 导出选项如何保存行分组进行了说明。行分组另存为元素。
RDL 元素 | 另存为 |
---|---|
DataCollectionName (Grouping) |
行分组元素的名称。如果未指定 DataCollectionName,则该元素的名称是 DataElementName 元素中指定的名称加上字符串“_Collection”。此命名方法不用于静态行分组。 |
DataElementName (Grouping) |
组实例元素的名称。组实例元素是行分组元素的子元素。如果未指定 DataElementName,则该元素的名称是 RDL 中的分组的名称。对于静态行分组,元素的名称是所使用的组头中文本框的 DataElementName 值。如果静态行标题没有文本框,则元素名称为 RowN,其中 N 是分配给行分组的数字。 |
ReportItems |
行分组中的所有项都另存为行分组元素父级的子元素或属性。 |
Subtotal |
行分组元素的同级元素。此元素包含一个矩阵单元。此元素的名称是小计的 DataElementName 元素中指定的名称。如果未指定名称,则元素名称为 Total。 |
注意: |
---|
默认情况下不保存小计。XML 导出选项仅在小计的 DataElementOutput RDL 元素的值为 Output 时才保存小计。 |
ColumnGrouping
下表对 XML 导出选项如何保存列分组进行了说明。列分组另存为元素。
RDL 元素 | 另存为 |
---|---|
DataCollectionName (Grouping) |
列分组元素的名称。如果未指定 DataCollectionName,则该元素的名称是 DataElementName 元素中指定的名称加上字符串“_Collection”。此命名方法不用于静态列分组。 |
DataElementName (Grouping) |
组实例元素的名称。组实例元素是列分组元素的子元素。如果未指定 DataElementName,则该元素的名称是 RDL 中的分组的名称。对于静态列分组,元素的名称是所使用的组头中文本框的 DataElementName 值。如果静态列标题没有文本框,则元素名称为 ColumnN,其中 N 是分配给列分组的数字。 |
ReportItems |
列分组中的所有项都另存为列分组元素父级的子元素或属性。 |
Subtotal |
列分组元素的同级元素。此元素包含一个矩阵单元。此元素的名称是小计的 DataElementName 元素中指定的名称。如果未指定名称,则元素名称为 Total。 |
注意: |
---|
默认情况下不保存小计。XML 导出选项仅在小计的 DataElementOutput RDL 元素的值为 Output 时才保存小计。 |
若要更好地了解 XML 导出选项如何将报表中的报表定义语言 (RDL) 元素保存为 XML 文件,您可能需要了解有关元素的详细信息。有关 RDL 元素的详细信息,请参阅 SQL Server 2005 联机丛书中的“报表定义语言”主题。
请参阅
概念
将报表导出为其他文件类型(报表生成器)
将报表导出为不同文件类型的设计注意事项(报表生成器)