Konvertieren von RDLC-Dateien in RDL-Dateien

Mit einer lizenzierten Version von SQL Server 2008 können Sie RDLC-Dateien in RDL-Dateien konvertieren, um diese auf einem Berichtsserver mit Reporting Services zu veröffentlichen.

Vergleichen von RDL und RDLC

Die Formate RDL und RDLC werden durch das XML-Schema der Berichtsdefinitionssprache (Report Definition Language, RDL) definiert. Das Schema für beide Dateiformate ist identisch. Sie finden dies unter https://schemas.microsoft.com/sqlserver/reporting/2008/01/reportdefinition. Die Dateien weisen jedoch die folgenden Unterschiede auf:

  • Das <Query>-Element der RDL enthält Abfrage- oder Befehlsinformationen und wird vom Berichtsserver verwendet, um eine Verbindung mit den Datenquellen des Berichts herzustellen.

  • Das <Query>-Element ist in einer RDLC-Datei optional. Dieses Element wird vom ReportViewer-Steuerelement ignoriert, da das ReportViewer-Steuerelement im lokalen Verarbeitungsmodus keine Datenverarbeitung ausführt, jedoch Daten verwendet, die von der Hostanwendung bereitgestellt werden.

So konvertieren Sie RDLC-Dateien in RDL-Dateien

Das Konvertieren einer RDLC-Datei in eine RDL-Datei erfordert, dass Sie Datenquellen- und Abfrageinformationen neu erstellen. Stellen Sie sicher, dass Sie ein Datenquellenschema verwenden, das mit dem im ursprünglichen Bericht verwendeten Schema übereinstimmt oder unter Strukturgesichtspunkten identisch ist. Wenn das Schema abweicht, ist das Berichtslayout möglicherweise für die Datenquelle, die Sie verwenden möchten, nicht gültig. Wenn Sie andere Schemas verwenden möchten, ist es einfacher, den Bericht vollständig neu zu erstellen, als ihn zu konvertieren.

Die Konvertierung einer RDLC-Datei in das RDL-Format erfolgt automatisch, wenn folgende Bedingungen erfüllt sind:

  • Die Berichtsdaten werden über eine Datentabelle bereitgestellt.

    Tipp

    Wenn die RDLC-Datei Daten aus einem Geschäftsobjekt verwendet, müssen Sie die RDLC-Datei manuell konvertieren. Ein Berichtsserver kann keine Geschäftsobjekte in einem Bericht verarbeiten. Um weiterhin Geschäftsobjekte für den Serverbericht zu verwenden, sollten Sie eine benutzerdefinierte Datenverarbeitungserweiterung implementieren. Weitere Informationen finden Sie unter Implementing a Data Processing Extension in der SQL Server-Onlinedokumentation.

  • Die Datenquelle, die von der RDLC-Datei verwendet wird, ist einer Datenverarbeitungserweiterung zugeordnet, die auf dem Berichtsserver installiert ist. (Wenn es sich bei der Datenquelle z. B. um eine SQL Server-Datenbank handelt, können Sie die SQL Server-Datenverarbeitungserweiterung verwenden, die standardmäßig auf dem Berichtsserver installiert ist.)

  • Die Abfrageinformationen und die Datenquellen-Verbindungsinformationen müssen nicht geändert werden.

Für eine automatische Konvertierung der RDLC-Datei können Sie die Dateinamenserweiterung in "RDL" umbenennen und die RDL-Datei dann auf einem Berichtsserver veröffentlichen oder auf den Server hochladen. Sie können Business Intelligence Development Studio in SQL Server 2008 oder höher verwenden, um die RDL-Datei zu veröffentlichen. Weitere Informationen zum Erstellen von Berichtsprojekten, zum Veröffentlichen von Berichten und zum Hochladen von Dateien finden Sie in der SQL Server-Onlinedokumentation.

Führen Sie die folgenden Schritte aus, um eine RDLC-Datei manuell in eine RDL-Datei zu konvertieren:

  1. Bestimmen Sie die Datenquelle, die Sie mit der RDL-Datei verwenden möchten. Sie können eine relationale SQL Server-Datenbank, eine mehrdimensionale Analysis Services-Datenbank, eine Oracle-Datenbank oder eine beliebige andere unterstützte Datenquelle verwenden. Das Schema muss dem Schema entsprechen, das Sie beim Erstellen des ursprünglichen RDLC-Berichtslayouts verwendet haben.

  2. Benennen Sie die RDLC-Datei mit der Dateierweiterung RDL um.

  3. Verwenden Sie Business Intelligence Development Studio von SQL Server, um das Berichtsserverprojekt zu erstellen oder zu öffnen, das den Bericht enthalten soll.

  4. Klicken Sie im Menü Projekt auf Vorhandenes Element hinzufügen. Wählen Sie die RDL-Datei aus, die Sie im ersten Schritt erstellt haben, und fügen Sie sie dem Projekt hinzu.

  5. Öffnen Sie im Projektmappen-Explorer die RDL-Datei, die Sie soeben dem Projekt hinzugefügt haben. Die Berichtsdefinitionsdatei wird im Entwurfsmodus geöffnet.

  6. Wählen Sie im Menü Ansicht den Befehl Berichtsdaten aus.

  7. Wählen Sie im Fenster Berichtsdaten die erste Datenquelle aus, und klicken Sie dann auf die Schaltfläche Bearbeiten.

  8. Klicken Sie im Dialogfeld Datenquelleneigenschaften neben dem Datenquellennamen auf die Schaltfläche Bearbeiten.

  9. Aktualisieren Sie die Verbindungsinformationen. Sie sollten die Verbindungszeichenfolge ersetzen, sodass der Bericht eine Verbindung mit der Datenquelle herstellt, die Sie verwenden möchten. Möglicherweise müssen Sie den Datenquellentyp, den Server, die Authentifizierungsoptionen und die Datenbankauswahl aktualisieren. Klicken Sie anschließend auf OK, um das Dialogfeld zu schließen.

  10. Wählen Sie im Fenster Berichtsdaten das erste Dataset aus, das der bearbeiteten Datenquelle zugeordnet ist, und klicken Sie dann auf die Schaltfläche Bearbeiten.

  11. Klicken Sie im Dialogfeld Dataseteigenschaften auf Abfrage-Designer.

  12. Klicken Sie auf Ausführen, um zu überprüfen, ob die Abfragezeichenfolge die gewünschten Daten zurückgibt.

  13. Wiederholen Sie die zuvor beschriebenen Schritte, um ggf. weitere im Bericht verwendete Datasets und Datenquellen zu ändern.

  14. Zeigen Sie eine Vorschau des Berichts an, um zu überprüfen, ob die Daten wie gewünscht im Berichtslayout zusammengeführt werden. Klicken Sie auf die Registerkarte Vorschau, um eine Vorschau des Berichts anzuzeigen.

Siehe auch

Konzepte

Bereitstellen von Berichten und ReportViewer-Steuerelementen

Konfigurieren von ReportViewer für die lokale Verarbeitung

Andere Ressourcen

Beispiele und Anleitungen