Vergleich zwischen Reporting Services und ReportViewer-Steuerelementen

Das ReportViewer-Steuerelement ist ein Visual Studio-Datensteuerelement, das Sie einer Webseite in einem ASP.NET-Anwendungsprojekt oder einem Formular in einer Visual Basic-Anwendung hinzufügen können. Dieses Steuerelement bettet Funktionen zum Verarbeiten und Anzeigen von Berichten direkt in eine Anwendung ein. Es stellt außerdem eine integrierte Entwurfsumgebung bereit, in der Sie Clientberichtsdefinitions-Dateien (RDLC) mit Daten aus einem beliebigen ADO.NET-Datenobjekt erstellen können. Eine mit umfassenden Features ausgestattete API ermöglicht den programmgesteuerten Zugriff auf das Steuerelement und auf Berichte, sodass Sie die Berichtsfunktionalität zur Laufzeit konfigurieren können.

Obwohl das ReportViewer-Steuerelement auf derselben Microsoft-Berichtstechnologie wie Reporting Services basiert, wird es in Visual Studio als Datensteuerelement verteilt. Sie können das Steuerelement mit Reporting Services verwenden oder als eingebettetes Datensteuerelement, das umfassende Berichtsfunktionen bietet.

Weitere Informationen zum ReportViewer-Steuerelement finden Sie im Thema zu ReportViewer-Steuerelementen in der Visual Studio-Produktdokumentation.

Zusammenfassung der Features

In der folgenden Tabelle wird dargestellt, wie sich das ReportViewer-Steuerelement in den Punkten Berichtsverarbeitung, Datenabruf, Bereitstellung und Berichtsentwurf von Reporting Services unterscheidet. Sie können anhand dieser Informationen ermitteln, welche Microsoft-Berichtstechnologie sich für Ihre Anwendung am besten eignet.

Funktionalität

ReportViewer-Steuerelemente

SQL Server Reporting Services

Berichtsverarbeitung

Verarbeitet Berichte in der Clientanwendung (lokaler Modus) oder hostet Serverberichte, die auf einem SQL ServerReporting Services-Remoteberichtsserver (Remotemodus) ausgeführt werden.

Verarbeitet Berichte auf einem Berichtsserver, der als Webdienst der mittleren Ebene in Internetinformationsdienste (IIS) ausgeführt wird.

Berichtsausgabeformate

GDI für Berichte, die in Windows-Anwendungen ausgeführt werden. HTML für Berichte, die auf ASP.NET-Webseiten ausgeführt werden.

Zu den Exportformaten gehören Microsoft Excel und PDF.

HTML, MHTML, TIFF, PDF, Excel, CSV und XML.

Es können auch benutzerdefinierte Ausgabeformate geschrieben werden.

Berichtsfeatures

Interaktive und statische Berichte für mehrdimensionale, relationale und visuelle Daten.

Sie können benutzerdefinierte Assemblys definieren, die im Bericht ausgeführt werden.

Sie können Ausrücke verwenden, um bedingte Formatierung und Aggregate bereitzustellen.

Die Berichtsfeatures umfassen alle Features von Berichten, die in einem ReportViewer-Steuerelement ausgeführt werden, einschließlich Unterstützung für benutzerdefinierte Berichtssteuerelemente, die Sie erstellen und in einem Bericht ausführen können.

Datenquellentypen und Datenabruf

Clientseitige Verarbeitung:

Stellen Sie direkt eine Bindung an ADO.NET-Datentabellen her, und verwenden Sie DataTable-Instanzen, die dem Steuerelement zur Verfügung gestellt werden. Sie können auch direkt an Geschäftsobjekte binden. Die Datenverarbeitung ist von der Berichtsverarbeitung getrennt. Die Anwendung stellt für den Bericht ein Rowset bereit. Das Steuerelement führt das Rowset mit dem Bericht zusammen und rendert ihn in ein Ausgabeformat.

Serverseitige Verarbeitung:

Der Bericht enthält Daten aus den unterstützten Datenquellentypen. Die Verarbeitung und das Rendering der Daten erfolgt auf dem Berichtsserver, anschließend wird der Bericht in das ReportViewer-Steuerelement geladen.

Integrierte Daten- und Berichtsverarbeitung auf einem Berichtsserver und auf Remotedatenservern.

Durch die auf dem Berichtsserver vorhandenen Datenverarbeitungserweiterungen ist festgelegt, welche Datenquellentypen unterstützt werden. Standarddatenquellen schließen SQL Server, Analysis Services, SQL ServerIntegration Services, Oracle, XML und OLEDB ein.

Zur Unterstützung anderer Datenquellentypen können benutzerdefinierte Datenverarbeitungserweiterungen erstellt werden.

Berichtsparametrisierung

Clientseitige Verarbeitung:

Integrierte Unterstützung für Berichtsparameter ermöglicht eine bedingte Formatierung und das Filtern des Resultsets basierend auf einem statischen Wert.

Sollen zur Laufzeit Benutzereingaben für Abfrageparameter oder Berichtsparameter angenommen werden, müssen Sie dazu in der Anwendung einen entsprechenden Code schreiben.

Im Unterschied zu Reporting Services-Berichten stellt ein ReportViewer-Steuerelement, das im lokalen Modus ausgeführt wird, keinen Parametereingabebereich für die Übergabe von Werten für die Datenverarbeitung bereit. Im lokalen Modus findet keine Integration zwischen den Daten und der Berichtsverarbeitung in den ReportViewer-Steuerelementen statt.

Die Berichtsparameter unterstützen die bedingte Formatierung und können Abfrageparametern zugeordnet werden, sodass zur Laufzeit Berichtsparameterwerte an eine Abfrage übergeben werden können. Im Bericht steht standardmäßig ein Parametereingabebereich zur Verfügung. Parametereigenschaften können zur Entwurfszeit definiert und zur Laufzeit verwaltet werden.

Berichtsentwurf und Visual Studio-Integration

Erstellen Sie Clientberichtsdefinitions-Dateien (RDLC) in Visual Studio. Beim Hinzufügen einer Berichtsvorlage zu einem Projekt wird eine Berichtsdefinitionsdatei erstellt, die Datei wird dem Projekt hinzugefügt, und im Visual Studio-Arbeitsbereich wird ein integrierter Berichts-Designer geöffnet.

Mit den Visual Studio-Datenquellen-Assistenten können Sie in Ihrer Anwendung Daten für die anschließende Verwendung im Bericht bereitstellen.

Der Visual Studio-Berichts-Designer enthält keine Registerkarte Vorschau. Um einen Bericht anzuzeigen, müssen Sie die Anwendung ausführen und den darin eingebetteten Bericht in der Vorschau anzeigen.

Der Visual Studio-Berichts-Designer ist mit dem Fenster Datenquellen integriert. Wenn ein Benutzer ein Feld aus dem Fenster Datenquellen in den Bericht zieht, kopiert der Berichts-Designer Metadaten zu der Datenquelle in die Berichtsdefinitionsdatei. Aus diesen Metadaten erstellt das ReportViewer-Steuerelement automatisch den Code für die Datenbindung.

Erstellen Sie Berichtsdefinitionen in Visual Studio durch den Business Intelligence Development Studio. Der Business Intelligence Development Studio fügt Projektvorlagen hinzu, die für SQL Server-Komponenten spezifisch sind. Wählen Sie zum Erstellen von Berichten eine Berichtsserverprojekt-Vorlage bzw. eine Vorlage aus dem Berichtsserverprojekt-Assistenten aus.

Mithilfe der Registerkarten Daten, Layout und Vorschau können Sie im selben Arbeitsbereich Daten definieren, ein Berichtslayout erstellen und eine Vorschau des Berichts anzeigen.

Bereitstellung und Verteilung

Sie können in eine Anwendung weitervertreibbare Steuerelemente und RDLC-Dateien einschließen. Sie können Berichtsdefinitionen auch als Datenstrom übergeben.

ReportViewer hostet den Bericht in einem Formular oder auf einer Webseite in einer von Ihnen erstellten und bereitgestellten Anwendung.

Die ReportViewer-Symbolleiste enthält zur Unterstützung von Laufzeitvorgängen Schaltflächen für die Seitennavigation, zum Drucken und Suchen sowie für Exportformate.

Stellen Sie einen SQL ServerReporting Services-Berichtsserver bereit. Berichtsdefinitionen werden in einer Berichtsserver-Datenbank gespeichert, auf einem Server verarbeitet und in einer browserbasierten Anwendung oder benutzerdefinierten Anwendung angezeigt.

Über eine Berichtssymbolleiste sind Funktionen für die Seitennavigation, zum Drucken und Suchen sowie Exportformate verfügbar.

Zum Anzeigen von Berichten bei Bedarf können Anzeigetools und SharePoint-Webparts verwendet werden.

Als Verteilungsfeatures stehen die abonnementbasierte Berichtsübermittlung an E-Mail-Adressen und Speicherorte für Dateifreigaben zur Verfügung.

Internetzugriff

Wenn Sie Berichte in einer über das Internet zugänglichen Webanwendung verfügbar machen möchten, wird die Verwendung eines auf einer Webseite gehosteten ReportViewer-Steuerelements empfohlen.

Das Steuerelement und die Berichte können mithilfe der von der Anwendung unterstützten Sicherheitsinfrastruktur in eine vorhandene Webanwendung eingepasst werden.

Sie können einen Reporting Services-Berichtsserver für den Internetzugriff konfigurieren. Abhängig von den Anforderungen der Anwendung und der Benutzer müssen Sie u. U. eine benutzerdefinierte Authentifizierungserweiterung erstellen, Konfigurationsdateien ändern und den Server für SSL (Secure Sockets Layer) konfigurieren. Weitere Informationen finden Sie unter Planen zur Extranet- oder Internetbereitstellung.

Unternehmensfeatures

Im Steuerelement nicht verfügbar. Das Steuerelement kann jedoch mit anderen Anwendungen verwendet werden, die eine Unternehmensfunktionalität bereitstellen.

ReportViewer-Steuerelemente eignen sich in idealer Weise zum Bereitstellen von vordefinierten Berichten, die in Windows Forms-Anwendungen und ASP.NET-Webseiten eingebettet sind.

ReportViewer-Steuerelemente können Berichte hosten, die sich in einer Berichtsserverbereitstellung für dezentrales Skalieren befinden (die Berichtsserverbereitstellung ist für das Steuerelement transparent).

Sie können das Steuerelement in benutzerdefinierten Anwendungen verwenden, die in einem beliebigen Bereitstellungsmodell mit hoher Verfügbarkeit ausgeführt werden.

Reporting Services unterstützt diese Unternehmensfeatures:

  • Bereitstellung für dezentrales Skalieren.

  • Geplante und bedarfsgesteuerte Berichtsverarbeitung.

  • Ad-hoc-Berichte, die bei Bedarf für eine einmalige Verwendung erstellt oder auf einem Server gespeichert werden können.

  • Datengesteuerte Abonnements, die eine angepasste Berichtsausgabe an eine dynamische Liste von Empfängern weiterleiten.

  • Verwaltungs- und Konfigurationstools.

Anpassung

Anpassungen werden durch die API unterstützt.

Sie können auch Eigenschaften für Berichte und die ReportViewer-Symbolleiste festlegen, um die Sichtbarkeit und Featureverfügbarkeit zu bestimmen.

Um Unterstützung für Datenverarbeitung, Berichtsübermittlung, benutzerdefinierte Authentifizierung und Berichtsrendering hinzuzufügen, können Erweiterungen erstellt werden.

Sie können Eigenschaften für den Bericht, die Berichtssymbolleiste und den Berichtsserver festlegen.

Zusätzliche Anpassungen werden über eine umfangreiche API unterstützt.

Beispiele und exemplarische Vorgehensweisen

Suchen Sie in der Visual Studio-Produktdokumentation oder auf MSDN nach Samples and Walkthroughs in Visual Studio in Visual Studio.

Weitere Informationen über Beispiele und exemplarische Vorgehensweisen in Reporting Services finden Sie unter Suchen von Lernprogrammen.

Dokumentation

Suchen Sie in der Visual Studio-Produktdokumentation oder auf MSDN nach ReportViewer Controls (Visual Studio).

Reporting Services ist in der SQL Server-Onlinedokumentation dokumentiert.