Erstellen von Berichtsdatasets aus XML-Daten (Berichts-Generator 2.0)

Berichts-Generator 2.0 stellt eine Datenverarbeitungserweiterung bereit, die das Abrufen von Berichtsdaten aus einer XML-Datenquelle unterstützt. In Berichten können Daten aus XML-Dokumenten und Webdiensten verwendet werden. Außerdem können XML-Daten in der Abfrage eingebettet sein. Das Abrufen von XML-Dokumenten aus einer SQL Server-Datenbank wird nicht unterstützt.

Herstellen einer Verbindung mit einer XML-Datenquelle und Abrufen von Daten

Wenn Sie XML-Daten in einem Bericht abrufen möchten, erstellen Sie eine Datenquelle mit einer Verbindungszeichenfolge, die eine URL zu einem Webdienst oder XML-Dokument angibt. Sie können auch eine Datenquelle mit einer leeren Verbindungszeichenfolge erstellen und XML-Daten in der Datasetabfrage einbetten.

Jede XML-Datenquelle muss die folgenden Merkmale aufweisen:

  • Die Datenquelle muss vom Typ XML sein. Berichts-Generator 2.0 stellt eine XML-Datenverarbeitungserweiterung zum Abrufen und Verarbeiten der Daten in einem Bericht bereit.

  • Wenn Anmeldeinformationen verwendet werden, müssen diese für die integrierte Windows-Sicherheit konfiguriert sein.

    Gespeicherte Anmeldeinformationen oder Aufforderungen zur Eingabe von Anmeldeinformationen werden nicht unterstützt. Wenn Sie die integrierte Sicherheit von Windows deaktiviert haben, können Sie sie nicht zum Abrufen von Daten verwenden. Wenn Sie gespeicherte Anmeldeinformationen oder auf Aufforderung einzugebende Anmeldeinformationen angeben, tritt zur Laufzeit ein Fehler auf.

    Wenn Sie keine Anmeldeinformationen auswählen, wird der anonyme Zugriff verwendet. Stellen Sie sicher, dass für die Verbindung des Berichtsservers zu einer externen Datenquelle ein Konto für die unbeaufsichtigte Ausführung definiert ist. Die XML-Datenverarbeitungserweiterung übergibt keine Anmeldeinformationen an die Ziel-URL oder den Webdienst. Die Verbindung wird nur dann hergestellt, wenn Sie das Konto für die unbeaufsichtigte Ausführung definiert haben. Weitere Informationen finden Sie unter "Konfigurieren eines Kontos für die unbeaufsichtigte Berichtsverarbeitung" in der Reporting Services-Dokumentation in der SQL Server-Onlinedokumentation.

  • Die Verbindungszeichenfolge muss eine URL sein, die auf den Webdienst, die webbasierte Anwendung oder das über HTTP verfügbare XML-Dokument zeigt. XML-Dokumente müssen die Erweiterung XML aufweisen. Für in der Datasetabfrage eingebettete XML-Daten können Sie auch eine leere Verbindungszeichenfolge verwenden.

  • Die Abfrage muss XML-Daten zurückgeben. Für XML-Dokumente können Sie mithilfe von XML-Syntax, die XQuery ähnelt, einen Elementpfad angeben, wie unter Syntax für Elementpfade zum Angeben von XML-Berichtsdaten (Berichts-Generator 2.0) beschrieben. Für einen Webdienst können Sie ein <Query>-Element angeben, das eine aufzurufende Methode oder eine SOAP-Aktion angibt. Sie können die Abfrage leer lassen und die Standardabfrage verwenden, wenn die XML-Datenquelle eine hierarchische Struktur besitzt, die die im Bericht zu verwendenden Daten bereitstellt. Mit der Abfrage abgerufene Werte und Attribute von XML-Elementknoten werden den im Bericht verwendeten Datasetfeldern zugeordnet.

  • Sie müssen den textbasierten Abfrage-Designer verwenden, um die Abfrage zu erstellen. Die Abfrage wird nicht zum Identifizieren von Parametern analysiert. Daher müssen Sie Parameter auf der Seite Parameter im Dialogfeld Dataseteigenschaften erstellen. Weitere Informationen zur Abfragesyntax finden Sie unter XML-Abfragesyntax zum Angeben von XML-Berichtsdaten (Berichts-Generator 2.0). Weitere Informationen zum textbasierten Abfrage-Designer finden Sie unter Benutzeroberfläche des textbasierten Abfrage-Designers (Berichts-Generator 2.0).

Verbindungszeichenfolgen für XML-Datenquellen

Im folgenden Beispiel wird die Syntax der Verbindungszeichenfolge für einen Webdienst bzw. für ein XML-Dokument angegeben. Das file://-Protokoll wird nicht unterstützt.

XML-Dokumenttyp

Beispiel für Verbindungszeichenfolge

Webdienst

http://adventure-works.com/results.aspx

XML-Dokument

https://localhost/XML/Customers.xml

Eingebettetes XML-Dokument

Leer

Weitere Informationen zum Definieren einer Datenquelle finden Sie unter Vorgehensweise: Erstellen eines Datenquellverweises (Berichts-Generator 2.0).

Abfragen für Datasets mit XML-Datenquellen

Datasets enthalten eine Abfrage, d. h den Befehlszeilentext, der für eine Datenquelle ausgeführt wird, um ein bestimmtes Resultset abzurufen. Das Resultset wird der Auflistung von Feldern in einem Dataset zugeordnet. Sie können auch Filterwerte für das Dataset festlegen, um die von der Datenquelle zurückgegebenen Ergebnisse einzuschränken. Die für eine Datasetabfrage für eine Datenquelle vom Typ XML möglichen Werte sind in der folgenden Tabelle veranschaulicht.

Datasetabfrage

Beschreibung

Leer

Verwenden Sie eine leere Abfrage, um ein Standardresultset zu erstellen. Die Standardabfrage wird erstellt, indem die Datenquelle gelesen und die XML-Knotenhierarchie bis zur ersten Blattauflistung durchsucht wird. Das Resultset enthält alle Knoten mit Textwerten und alle Knotenattribute unter diesem Pfad. Die Spalten im Resultset werden den Feldern für das Dataset zugeordnet.

Elementpfad

Gibt die Sequenz von Knoten an, die beim Abrufen von XML-Daten aus der Datenquelle verwendet wird.

XML-Abfrageelement

Eine XML-Abfragespezifikation mit den folgenden optionalen Elementen.

XML-DatenquelleErforderliche XML-ElementeOptionale XML-Elemente
Für einen Webdienst <Method Namespace= "namespace" Name="MethodName" /> -- or -- <SoapAction> SOAP-Aktion </SoapAction> <ElementPath> Elementpfad </ElementPath> <Method Namespace= "namespace" Name="MethodName" /> -- or -- <SoapAction> SOAP-Aktion </SoapAction>
Für ein XML-Dokument <ElementPath> Elementpfad </ElementPath>
Für ein eingebettetes XML-Dokument <XmlData> inneres XML-Element </XmlData> <ElementPath> Elementpfad </ElementPath> -- or -- <ElementPath IgnoreNamespaces="true"> Elementpfad </ElementPath>

Mit dem XML-Abfrageelement geben Sie im XML-ElementPath Namespaces bzw. das IgnoreNamespaces-Attribut an, um diese zu ignorieren. Weitere Informationen zum XML-Abfrageelement finden Sie unter XML-Abfragesyntax zum Angeben von XML-Berichtsdaten (Berichts-Generator 2.0). Weitere Informationen zur Syntax des Elementpfads finden Sie unter Syntax für Elementpfade zum Angeben von XML-Berichtsdaten (Berichts-Generator 2.0).

Anforderungen für das Abrufen von XML-Webdienstdaten

Die XML-Datenverarbeitungserweiterung kann das Schema nicht selbstständig erkennen. Daher müssen Sie über eine Möglichkeit verfügen, die SOAP-Methoden zu ermitteln, mit denen die gewünschten Daten abgerufen werden können. Sie müssen außerdem wissen, welches Adressierungsschema oder welchen Namespace der Webdienst für seine Daten verwendet.

Anforderungen für das Abrufen von XML-Dokumentdaten

Bei Verwendung von HTTP muss der Server XML-Daten zurückgeben, oder die XML-Daten müssen im XML-Query-Element eingebettet sein. Wenn Sie über HTTP direkt auf ein XML-Dokument verweisen, muss die Erweiterung .xml verwendet werden. Sie müssen wissen, wie Sie eine XML-Abfrage erstellen, die alle benötigten Daten abruft. Wenn Sie keinen Elementpfad angeben, besteht das Standardverhalten zum Analysieren eines XML-Dokuments darin, dass der erste verfügbare Pfad zu einer Blattknotenauflistung im XML-Dokument ausgewählt wird. Wenn das XML-Dokument zusätzliche Pfade zu anderen Auflistungen gleichgeordneter Blattknoten enthält, werden diese Knoten ignoriert, es sei denn, Sie geben in der Abfrage einen Pfad ein. Weitere Informationen finden Sie unter Syntax für Elementpfade zum Angeben von XML-Berichtsdaten (Berichts-Generator 2.0).