Exportieren nach XML (Berichts-Generator und SSRS)Exporting to XML (Report Builder and SSRS)

Die XML-Renderingerweiterung gibt einen paginierten Bericht im XML-Format zurück.The XML rendering extension returns a paginated report in XML format. Das Schema der Bericht-XML-Ausgabe hängt vom jeweiligen Bericht ab und enthält nur Daten.The schema for the report XML is specific to the report, and contains data only. Layoutinformationen werden von der XML-Renderingerweiterung nicht gerendert, und die Paginierung wird nicht beibehalten.Layout information is not rendered and pagination is not maintained by the XML rendering extension. Der von dieser Erweiterung generierte XML-Code kann in eine Datenbank importiert, als XML-Datennachricht verwendet oder an eine benutzerdefinierte Anwendung gesendet werden.The XML generated by this extension can be imported into a database, used as an XML data message, or sent to a custom application.

Hinweis

Sie können paginierte Berichtsdefinitionsdateien (.rdl) im Berichts-Generator und im Berichts-Designer in SQL Server-Datentools erstellen und ändern.You can create and modify paginated report definition (.rdl) files in Report Builder and in Report Designer in SQL Server Data Tools. Jede Erstellungsumgebung bietet verschiedene Methoden zum Erstellen, Öffnen und Speichern von Berichten und verwandten Elementen.Each authoring environment provides different ways to create, open, and save reports and related items.

BerichtselementeReport Items

In der folgenden Tabelle wird beschrieben, wie Berichtselemente gerendert werden.The following table describes how report items are rendered.

ElementItem RenderingverhaltenRendering behavior
BerichtReport Wird als Element der obersten Ebene des XML-Dokuments gerendert.Renders as the top-level element of the XML document.
DatenbereicheData regions Wird als Element innerhalb des Elements für den Container gerendert.Renders as an element within the element for its container. Datenbereiche beinhalten Tabellen, Matrizen und Listen, in denen Daten in Text- und Diagrammform angezeigt werden, sowie Datenbalken, Sparklines, Messgeräte und Indikatoren für die visuelle Darstellung von Daten.Data regions include table, matrix, and list that display data as text and chart, data bars, sparklines, gauges, and indicators that visualize data.
Gruppen- und DetailabschnitteGroup and detail sections Jede Instanz wird als Element innerhalb des Elements für den Container gerendert.Each instance renders as an element within the element for its container.
TextfeldText box Wird als Attribut oder Element innerhalb des Containers gerendert.Renders as an attribute or element within its container.
RechteckRectangle Wird als Element innerhalb des Containers gerendert.Renders as an element within its container.
MatrixspaltengruppenMatrix column groups Werden als Elemente innerhalb von Zeilengruppen gerendert.Renders as elements within row groups.
KarteMap Wird als Element innerhalb des Elements für den Container gerendert.Renders as an element within the element for its container. Kartenebenen sind untergeordnete Elemente der Karte, und jede Kartenebene umfasst Elemente für die zugehörigen Kartenelemente und Kartenelementattribute.Map layers are child elements of the map and each map layer includes elements for their map members and map member attributes.
DiagrammChart Wird als Element innerhalb des Elements für den Container gerendert.Renders as an element within the element for its container. Reihen sind untergeordnete Elemente des Diagramms, und Kategorien sind untergeordnete Elemente einer Reihe.Series are child elements of the chart, and categories are child element of a series. Alle Diagrammbezeichnungen für jeden Diagrammwert werden gerendert.Renders all chart labels for each chart value. Bezeichnungen und Werte sind als Attribute eingeschlossen.Labels and values are included as attributes.
DatenbalkenData bar Wird ähnlich einem Diagramm als Element innerhalb des Elements für den Container gerendert.Renders as an element within the element for its container, similar to a chart. Ein Datenbalken enthält normalerweise keine Hierarchien oder Bezeichnungen, sondern nur Werte.Typically, a data bar does not include hierarchies or labels, only values.
SparklineSparkline Wird ähnlich einem Diagramm als Element innerhalb des Elements für den Container gerendert.Renders as an element within the element for its container, similar to a chart. Eine Sparkline enthält normalerweise keine Hierarchien oder Bezeichnungen, sondern nur Werte.Typically, a sparkline does not include hierarchies or labels, only values.
MessgerätGauge Wird als Element innerhalb des Elements für den Container gerendert.Renders as an element within the element for its container. Es wird ein einzelnes Element mit dem Minimal- und Maximalwert der Skala, dem Start- und Endwert des Bereichs und dem Wert des Zeigers als Attribute gerendert.Renders as a single element with the minimum and maximum values of the scale, start and end values of the range, and the value of the pointer as attributes.
IndikatorIndicator Wird ähnlich einem Messgerät als Element innerhalb des Elements für den Container gerendert.Renders as an element within the element for its container, similar to a gauge. Wird als einzelnes Element mit dem Namen des aktiven Zustands, den verfügbaren Zuständen und dem Datenwert als Attribute gerendert.Renders as a single element with the active state name, available states, and the data value as attributes.

Für Berichte, die mit der XML-Renderingerweiterung gerendert werden, sind außerdem folgende Regeln zu beachten:Reports that are rendered using the XML rendering extension also follow these rules:

  • XML-Elemente und -Attribute werden in der Reihenfolge gerendert, in der sie in der Berichtsdefinition angezeigt werden.XML elements and attributes are rendered in the order that they appear in the report definition.

  • Die Paginierung wird ignoriert.Pagination is ignored.

  • Kopf- und Fußzeilen werden nicht gerendert.Page headers and footers are not rendered.

  • Ausgeblendete Elemente, die nicht durch Umschalten sichtbar gemacht werden können, werden nicht gerendert.Hidden items that cannot be made visible by toggling are not rendered. Sichtbare Elemente und ausgeblendete Elemente, die durch Umschalten sichtbar gemacht werden können, werden gerendert.Initially visible items and hidden items that can be made visible through a toggle are rendered.

  • Images, lines, and custom report items werden ignoriert.Images, lines, and custom report items are ignored.

DatentypenData Types

Dem Textfeldelement oder -attribut wird basierend auf den im Textfeld angezeigten Werten ein XSD-Datentyp zugewiesen.The text box element or attribute is assigned an XSD data type based on the values that the text box displays.

Wert aller TextfeldelementeIf all text box values are Zugewiesener DatentypAssigned data type is
Int16, Int32, Int64, UInt16, UInt32, UInt64, Byte, SByteInt16, Int32, Int64, UInt16, UInt32, UInt64, Byte, SByte xsd:integerxsd:integer
Decimal (oder Decimal und jeder integer- oder BYTE-Datentyp)Decimal (or Decimal and any integer or byte data type) xsd:decimalxsd:decimal
Float (oder Decimal und jeder integer- oder BYTE-Datentyp)Float (or Decimal and any integer or byte data type) xsd:floatxsd:float
Double (oder Decimal und jeder integer- oder BYTE-Datentyp)Double (or Decimal and any integer or byte data type) xsd:doublexsd:double
DateTime oder DateTimeOffsetDateTime or DateTime Offset xsd:dateTimexsd:dateTime
ZeitTime xsd:stringxsd:string
BooleanBoolean xsd:booleanxsd:boolean
String, CharString, Char xsd:stringxsd:string
AndereOther xsd:stringxsd:string

XML-spezifische RenderingregelnXML-Specific Rendering Rules

In den folgenden Abschnitten wird beschrieben, wie die XML-Renderingerweiterungen die Elemente innerhalb des Berichts interpretieren.The following sections describe how the XML rendering extensions interprets the items within the report.

Hauptteil des BerichtsReport Body

Ein Bericht wird als Stammelement des XML-Dokuments gerendert.A report is rendered as the root element of the XML document. Der Name des Elements wird von der im Bereich Eigenschaften festgelegten DataElementName-Eigenschaft abgeleitet.The name of the element comes from the DataElementName property set in the Properties pane.

XML-Namespacedefinitionen und Schemareferenzattribute sind ebenfalls im Berichtselement enthalten.XML namespace definitions and schema reference attributes are also included in the report element. Variablen werden fett formatiert:Variables are noted in bold face type:

<Report xmlns="SchemaName" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="SchemaNameReportURL&rc%3aSchema=true" Name="ReportName"><Report xmlns="SchemaName" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="SchemaNameReportURL&rc%3aSchema=true" Name="ReportName">

Die Werte für die Variablen lauten wie folgt:The values for the variables are as follows:

NameName valueValue
BerichtReport Report.DataElementNameReport.DataElementName
ReportURLReportURL URL-codierte absolute URL zum Bericht auf dem Server.URLEncoded absolute URL to the report on the server.
SchemaNameSchemaName Report.SchemaName.Report.SchemaName. Wenn NULL, dann Report.Name.If null, then Report.Name. Wenn Report.Name verwendet wird, wird es zuerst mit XmlConvert.EncodeLocalName codiert.If Report.Name is used, it is first encoded with XmlConvert.EncodeLocalName.
ReportNameReportName Der Berichtsname.The name of the report.

TextfelderText boxes

Textfelder werden als Elemente oder Attribute der DataElementStyle-RDL-Eigenschaft entsprechend gerendert.Text boxes are rendered as elements or attributes according to the DataElementStyle RDL property. Der Name des Elements oder Attributs wird von der TextBox.DataElementName-RDL-Eigenschaft abgeleitet.The name of the element or attribute comes from the TextBox.DataElementName RDL property.

Diagramme, Datenbalken und SparklinesCharts, Data Bars, and Sparklines

Diagramme, Datenbalken und Sparklines werden in XML gerendert.Charts ,data bars, and sparklines are rendered in XML. Die Daten sind strukturiert.The data is structured.

Messgeräte und IndikatorenGauges and Indicators

Messgeräte und Indikatoren werden in XML gerendert.Gauges and indicators are rendered in XML. Die Daten sind strukturiert.The data is structured.

UnterberichteSubreports

Ein Unterbericht wird als ein Element gerendert.A subreport is rendered as an element. Der Name des Elements wird von der DataElementName-RDL-Eigenschaft abgeleitet.The name of the element is taken from the DataElementName RDL property. Die Einstellung der TextBoxesAsElements-Eigenschaft des Berichts überschreibt die Einstellung des Unterberichts.The TextBoxesAsElements property setting of the report overrides that of the subreport. Namespace- und XSLT-Attribute werden nicht zum Unterberichtselement hinzugefügt.Namespace and XSLT attributes are not added to the subreport element.

RechteckeRectangles

Ein Rechteck wird als ein Element gerendert.A rectangle is rendered as an element. Der Name des Elements wird von der DataElementName-RDL-Eigenschaft abgeleitet.The name of the element is taken from the DataElementName RDL property.

Custom Report ItemsCustom Report Items

CustomReportItems (CRI) sind für die Renderingerweiterung nicht sichtbar.CustomReportItems (CRI) are not visible to the rendering extension. Wenn ein benutzerdefiniertes Berichtselement im Bericht vorhanden ist, rendert die Renderingerweiterung dieses als konventionelles Berichtselement.If a custom report item exists in the report, the rendering extension renders it as a conventional report item.

BilderImages

Bilder werden nicht gerendert.Images are not rendered.

LinienLines

Linien werden nicht gerendert.Lines are not rendered.

Tabellen, Matrizen und ListenTables, Matrices, and Lists

Tabellen, Matrizen und Listen werden als Element gerendert.Tables, matrices, and lists, are rendered as an element. Der Name des Elements wird von der Tablix-RDL-Eigenschaft DataElementName abgeleitet.The name of the element comes from the Tablix DataElementName RDL property.

Zeilen und SpaltenRows and Columns

Spalten werden innerhalb der Zeilen gerendert.Columns are rendered within rows.

Tablix-EckeTablix Corner

Die Ecke wird nicht gerendert.The corner is not rendered. Nur der Inhalt der Ecke wird gerendert.Only the contents of the corner are rendered.

Tablix-ZellenTablix Cells

Tablix-Zellen werden als Elemente gerendert.Tablix cells are rendered as elements. Der Name des Elements wird von der DataElementName-RDL-Eigenschaft der Zelle abgeleitet.The name of the element is taken from the cell's DataElementName RDL property.

Automatische TeilergebnisseAutomatic Subtotals

Automatische Tablix-Teilergebnisse werden nicht gerendert.Tablix automatic subtotals are not rendered.

Zeilen- und Spaltenelemente, die sich nicht mit einer Gruppe wiederholenRow and Column Items that Do Not Repeat with a Group

Elemente, die sich nicht mit einer Gruppe wiederholen, wie Bezeichnungen, Teilergebnisse und Gesamtergebnisse, werden als Elemente gerendert.Items that do not repeat with a group, such as labels, subtotals and totals, are rendered as elements. Der Name des Elements wird von der TablixMember-RDL-Eigenschaft DataElementName abgeleitet.The name of the element comes from the TablixMember.DataElementName RDL property.

Die RDL-Eigenschaft TablixMember.DataElementOutput steuert, ob ein nicht wiederholtes Element gerendert wird.The TablixMember.DataElementOutput RDL property controls whether a non-repeating item is rendered.

Wenn die DataElementName-Eigenschaft des Tablix-Elements nicht angegeben ist, wird ein Name für das nicht wiederholte Element in folgender Form dynamisch generiert:If the DataElementName property of the Tablix member is not provided, a name for the non-repeating item is dynamically generated in this form:

ReiheX: Für nicht wiederholte Zeilen, wobei X ein nullbasierter Zeilenindex innerhalb des aktuellen übergeordneten Elements ist.RowX For non-repeating rows, where X is a zero-based row index within the current parent.

SpalteY: Für nicht wiederholte Spalten, wobei Y ein nullbasierter Spaltenindex innerhalb des aktuellen übergeordneten Elements ist.ColumnY For non-repeating columns, where Y ix a zero-based column index within the current parent.

Eine nicht wiederholte Kopfzeile wird als untergeordnetes Element der Zeile oder Spalte gerendert, die nicht mit einer Gruppe wiederholt wird.A non-repeating header is rendered as a child of the row or column that does not repeat with a group.

Wenn ein nicht wiederholtes Element über keine entsprechenden Tablix-Zellen verfügt, wird es nicht gerendert.If a non-repeating member has no corresponding Tablix cells, it is not rendered. Dies ist möglicherweise der Fall, wenn sich eine Tablix-Zelle über mehr als eine Spalte erstreckt.This may occur in the case of a Tablix cell where it spans more than one column.

Zeilen und Spalten, die sich mit einer Gruppe wiederholenRows and Columns that Repeat with a Group

Zeilen und Spalten, die sich innerhalb einer Gruppe wiederholen, werden nach den Regeln Tablix.DataElementOutput gerendert.Rows and columns that repeat within a group are rendered according to Tablix.DataElementOutput rules. Der Name des Elements wird von der DataElementName-Eigenschaft abgeleitet.The name for the element is taken from the DataElementName property.

Jeder eindeutige Wert innerhalb einer Gruppe wird als untergeordnetes Element der Gruppe gerendert.Each unique value within a group is rendered as a child element of the group. Der Name des Elements wird von der Group.DataElementName-Eigenschaft abgeleitet.The name for the element is taken from the Group.DataElementName property.

Wenn der DataElementOutput-Eigenschaftswert „Output“ lautet, wird die Kopfzeile eines wiederholten Elements als untergeordnetes Element des Detailelements gerendert.If the DataElementOutput property value equals Output, a repeating item's header is rendered as a child of the detail element.

Benutzerdefinierte Formate und XSL-TransformationenCustom Formats and XSL Transformations

Von der XML-Renderingerweiterung erstellte XML-Dateien können mithilfe von XSL-Transformationen (XSLT) in beinahe jedes Format transformiert werden.XML files produced by the XML rendering extension can be transformed into almost any format using XSL Transformations (XSLT). Mit dieser Funktion können Daten in Formaten erstellt werden, die von den vorhandenen Renderingerweiterungen nicht unterstützt werden.This functionality can be used to produce data in formats not already supported by existing rendering extensions. Bevor Sie eine eigene Renderingerweiterung erstellen, sollten Sie die Verwendung der XML-Renderingerweiterung und von XSLT in Betracht ziehen.Consider using the XML rendering extension and XSLT before attempting to create your own rendering extension.

Doppelte NamenDuplicate Names

Wenn doppelte Datenelementnamen innerhalb des gleichen Bereichs vorhanden sind, zeigt der Renderer eine Fehlermeldung an.If there are duplicate data element names within the same scope, the renderer displays an error message.

XSLT-TransformationenXSLT Transformations

Der XML-Renderer kann eine serverseitige XSLT-Transformation für die ursprünglichen XML-Daten übernehmen.The XML renderer can apply a server-side XSLT transformation to the original XML data. Wenn eine XSLT-Transformation übernommen wird, gibt der Renderer den transformierten Inhalt statt der ursprünglichen XML-Daten aus.When an XSLT is applied, the renderer outputs the transformed content instead of the original XML data. Die Transformation tritt auf dem Server, nicht auf dem Client auf.The transformation occurs on the server, not on the client.

Die XSLT-Transformation, die für die Ausgabe übernommen werden soll, wird entweder in der Berichtsdefinitionsdatei mithilfe der DataTransform-Eigenschaft des Berichts oder mithilfe des DeviceInfo -XSLT-Parameters definiert.The XSLT to apply to the output is defined either in the report definition file with the DataTransform property of the report or with the XSLT DeviceInfo parameter. Wenn beide Werte festgelegt werden, tritt die Transformation bei jeder Verwendung des XML-Renderers auf.If either of these values are set, the transform occurs each time the XML renderer is used. Wenn Abonnements verwendet werden, muss die XSLT-Transformation in der DataTransform-RDL-Eigenschaft definiert werden.When using subscriptions, the XSLT must be defined in the RDL DataTransform property.

Ist eine XSLT-Datei sowohl in der DataTransform-Definitionseigenschaft als auch der Geräteinformationseinstellung angegeben, tritt die in DataTransform angegebene XSLT-Transformation zuerst auf. Anschließend findet die von den Geräteinformationseinstellungen festgelegte XSLT-Transformation statt.If an XSLT file is specified, by both the DataTransform definition property and the device information setting, the XSLT specified in DataTransform occurs first, followed by the XSLT set by the device information settings.

GeräteinformationseinstellungenDevice Information Settings

Sie können einige Standardeinstellungen für diesen Renderer ändern, indem Sie die Geräteinformationseinstellungen ändern. Dazu gehören:You can change some default settings for this renderer by changing the device information settings, including the following:

  • Eine auf die XML-Ausgabe anzuwendende Transformation (XSLT).A transformation (XSLT) to apply to the XML.

  • Den MIME-Typ des XML-Dokuments.The MIME type of the XML document.

  • Ob Formatzeichenfolgen auf Daten angewendet werden sollen.Whether to apply format strings to data.

  • Ob die XML-Ausgabe eingezogen werden soll.Whether to indent the XML output.

  • Ob der XML-Schemaname einbezogen werden soll.Whether to include the XML schema name.

  • Die Codierung für das XML-Dokument.The encoding for the XML document.

  • Die Dateierweiterung des XML-Dokuments.The file extension of the XML document.

Weitere Informationen finden Sie unter XML Device Information Settings.For more information, see XML Device Information Settings.

Weitere InformationenSee Also

Paginierung in Reporting Services (Berichts-Generator und SSRS) Pagination in Reporting Services (Report Builder and SSRS)
Renderingverhalten (Berichts-Generator und SSRS) Rendering Behaviors (Report Builder and SSRS)
Interaktive Funktionalität für verschiedene Berichtsrenderingerweiterungen (Berichts-Generator und SSRS) Interactive Functionality for Different Report Rendering Extensions (Report Builder and SSRS)
Rendern von Berichtselementen (Berichts-Generator und SSRS) Rendering Report Items (Report Builder and SSRS)
Tabellen, Matrizen und Listen (Berichts-Generator und SSRS)Tables, Matrices, and Lists (Report Builder and SSRS)