Arbeiten mit Feldern in einem Berichtsdataset (Report Builder 3.0 und SSRS)
Datasetfelder stellen die Daten von einer Datenverbindung dar. Ein Feld kann entweder numerische oder nicht numerische Daten darstellen. Dazu zählen z. B. Umsätze, der Gesamtumsatz, Kundennamen, Datenbankbezeichner, URLs, Bilder, räumliche Daten und E-Mail-Adressen. Auf der Entwurfsoberfläche werden Felder als Ausdrücke in Berichtselementen wie z. B. Textfelder, Tabellen und Diagramme angezeigt.
Ein Bericht hat drei Typen von Feldern und zeigt sie im Bereich Berichtsdaten an: Datasetfelder, berechnete Datasetfelder und integrierte Felder.
Datasetfelder. Die Metadaten, die die Auflistung von Feldern darstellen, die zurückgegeben werden, wenn die Datasetabfrage für die Datenquelle ausgeführt wird.
Berechnete Datasetfelder. Weitere Felder, die Sie für das Dataset erstellen. Jedes berechnete Feld wird erstellt, indem ein von Ihnen definierter Ausdruck ausgewertet wird.
Integrierte Felder. Die Metadaten, die eine vom Berichts-Generator gelieferte Auflistung von Feldern darstellen, die Berichtsinformationen, wie zum Beispiel den Berichtsnamen oder den Zeitpunkt der Berichtsverarbeitung, bereitstellen. Weitere Informationen finden Sie unter Verwenden von integrierten globalen Werten und Benutzerverweisen (Report Builder 3.0 und SSRS).
Datasetfeldnamen werden als Teil der Berichtsdatasetdefinition gespeichert. Weitere Informationen finden Sie unter Erstellen und Hinzufügen von Datasets (Berichts-Generator 3.0 und SSRS).
Hinweis |
---|
Sie können Berichtsdefinitionen (RDL) in Berichts-Generator 3.0 und im Berichts-Designer in Business Intelligence Development Studio erstellen und ändern. Jede Erstellungsumgebung bietet verschiedene Methoden zum Erstellen, Öffnen und Speichern von Berichten und verwandten Elementen. Weitere Informationen finden Sie unter Entwerfen von Berichten in Berichts-Designer und Berichts-Generator 3.0 (SSRS) im Web auf microsoft.com. |
In diesem Artikel
Datasetfelder und Abfragen
Grundlegendes zu Standardausdrücken für Felder
Datasetfelder und Datentypen
Erkennen von fehlenden Feldern zur Laufzeit
Datasetfelder und Abfragen
Datasetfelder werden über den Befehl zur Datasetabfrage und über von Ihnen definierte berechnete Felder angegeben. Die Auflistung von Feldern, die Sie im Bericht sehen, hängt von Ihrem Typ des Datasets ab:
Freigegebenes Dataset. Die Feldauflistung ist die Liste von Feldern für die Abfrage in der Definition des freigegebenen Datasets zu der Zeit, zu der Sie dem Bericht das freigegebene Dataset direkt hinzugefügt haben oder einen Berichtsteil hinzugefügt haben, der das freigegebene Dataset enthielt. Die lokale Feldauflistung ändert sich nicht, wenn sich die freigegebene Datasetdefinition auf dem Berichtsserver ändert. Um die lokale Feldauflistung zu aktualisieren, müssen Sie die Liste für das lokale freigegebene Dataset aktualisieren.
Eingebettetes Dataset. Die Feldauflistung ist die Liste der Felder, die zurückgegeben werden, wenn die aktuelle Abfrage für die Datenquelle ausgeführt wird.
Weitere Informationen finden Sie unter Vorgehensweise: Hinzufügen, Bearbeiten und Aktualisieren von Feldern im Fenster 'Berichtsdaten' (Report Builder 3.0 und SSRS).
Wenn in der Datasetfeldauflistung nicht die erwarteten Ergebnisse angezeigt werden, finden Sie Hilfe dazu unter Behandeln von Problemen bei Berichten: Abruf von Berichtsdaten.
Zurück zum Anfang
Berechnete Felder
Sie geben ein berechnetes Feld manuell an, indem Sie einen Ausdruck erstellen. Sie können berechnete Felder verwenden, um neue Werte zu erstellen, die unter der Datenquelle nicht vorhanden sind. Ein berechnetes Feld kann zum Beispiel einen neuen Wert, eine benutzerdefinierte Sortierreihenfolge für eine Gruppe von Feldwerten oder ein vorhandenes Feld darstellen, das in einen anderen Datentyp konvertiert wird.
Berechnete Felder sind mit einem Bericht verknüpft und können nicht als Teil eines freigegebenen Datasets gespeichert werden.
Weitere Informationen finden Sie unter Vorgehensweise: Hinzufügen, Bearbeiten und Aktualisieren von Feldern im Fenster 'Berichtsdaten' (Report Builder 3.0 und SSRS).
Zurück zum Anfang
Entitäten und Entitätsfelder
Wenn Sie mit einer Berichtsmodelldatenquelle arbeiten, geben Sie die Entitäten und Entitätsfelder als Berichtsdaten an. Im Abfrage-Designer für ein Berichtsmodell können Sie verknüpfte Entitäten interaktiv untersuchen und wählen und die Felder auswählen, die Sie in das Berichtsdataset einschließen möchten. Nachdem Sie die Abfrage entworfen haben, können Sie die Auflistung von Entitätsbezeichnern und Entitätsfeldern im Bereich Berichtsdaten sehen. Entitätsbezeichner werden automatisch vom Berichtsmodell generiert und werden in der Regel nicht für den Endbenutzer angezeigt. Weitere Informationen finden Sie unter Benutzeroberfläche des Berichtsmodellabfrage-Designers (Berichts-Generator 3.0).
Verwenden von erweiterten Feldeigenschaften
Datenquellen, die mehrdimensionale Abfragen unterstützen, zum Beispiel SQL Server Analysis Services, unterstützen auch Feldeigenschaften in Feldern. Feldeigenschaften werden im Resultset einer Abfrage angezeigt, sind im Bereich Berichtsdaten jedoch nicht sichtbar. Sie stehen trotzdem zur Verwendung im Bericht zur Verfügung. Wenn Sie auf eine Eigenschaft für ein Feld verweisen möchten, ziehen Sie das Feld in den Bericht und ändern die Standardeigenschaft Value in den Feldnamen der gewünschten Eigenschaft. In einem Analysis Services-Cube können Sie zum Beispiel Formate für Werte in den Cubezellen definieren. Der formatierte Wert ist mithilfe der Feldeigenschaft FormattedValue verfügbar. Um den Wert direkt zu verwenden, anstatt einen Wert zu verwenden und die Formateigenschaft des Textfelds festzulegen, ziehen Sie das Feld in das Textfeld und ändern den Standardausdruck =Fields!FieldName.Value in =Fields!FieldName.FormattedValue.
Hinweis |
---|
Nicht alle Field-Eigenschaften können für alle Datenquellen verwendet werden. Die Value- und die IsMissing-Eigenschaft werden für alle Datenquellen definiert. Weitere vordefinierte Eigenschaften (zum Beispiel Key, UniqueName und ParentUniqueName für mehrdimensionale Datenquellen) werden nur unterstützt, wenn die Datenquelle diese Eigenschaften bereitstellt. Benutzerdefinierte Eigenschaften werden von einigen Datenanbietern unterstützt. Weitere Informationen finden Sie in den entsprechenden Themen über erweiterte Feldeigenschaften für den Datenquellentyp unter Erstellen und Hinzufügen von Datasets (Berichts-Generator 3.0 und SSRS). Sehen Sie für eine SQL Server Analysis Services-Datenquelle zum Beispiel unter Erweiterte Feldeigenschaften für eine Analysis Services-Datenbank (SSRS) nach. |
Zurück zum Anfang
Grundlegendes zu Standardausdrücken für Felder
Bei einem Textfeld kann es sich um ein Textfeld-Berichtselement im Text des Berichts oder um ein Textfeld in einer Zelle eines Tablix-Datenbereichs handeln. Wenn Sie ein Feld mit einem Textfeld verknüpfen, gibt die Position des Textfelds den Standardausdruck für den Feldverweis vor. Im Hauptteil des Berichts muss ein Textfeldwert-Ausdruck ein Aggregat und ein Dataset angeben. Wenn im Bericht nur ein Dataset vorhanden ist, wird dieser Standardausdruck für Sie erstellt. Die Standardaggregatfunktion für numerische Felder ist Sum. Das Standardaggregat für nicht numerische Felder ist First.
In einem Tablix-Datenbereich hängt der Standardfeldausdruck von den Zeilen- und Gruppenmitgliedschaften des Textfelds ab, dem Sie das Feld hinzufügen. Der Feldausdruck für das Feld Sales lautet [Sales], wenn Sie dieses einem Textfeld in der Detailzeile einer Tabelle hinzufügen. Wenn Sie dasselbe Feld einem Textfeld in einem Gruppenkopf hinzufügen, lautet der Standardausdruck (Sum[Sales]). Dies liegt daran, dass der Gruppenkopf zusammenfassende Werte für die Gruppe anzeigt, keine Detailwerte. Beim Ausführen des Berichts wertet der Berichtsprozessor die einzelnen Ausdrücke aus und ersetzt das Ergebnis im Bericht.
Weitere Informationen zu Ausdrücken finden Sie unter Ausdrücke (Report Builder 3.0 und SSRS).
Zurück zum Anfang
Felddatentypen
Beim Erstellen eines Datasets kann es sein, dass die Datentypen der Felder einer Datenquelle nicht genau den Datentypen entsprechen, die in einem Bericht verwendet werden. Datentypen durchlaufen in der Regel eine oder zwei Zuordnungsebenen. Gegebenenfalls ordnet die Datenverarbeitungserweiterung bzw. der Datenanbieter die Datentypen der Datenquelle CLR-Datentypen (Common Language Runtime) zu. Die Datentypen, die von den Datenverarbeitungserweiterungen zurückgegeben werden, werden einer Teilmenge der CLR-Datentypen (Common Language Runtime) von .NET Framework zugeordnet.
Unter der Datenquelle werden die Daten als Datentypen gespeichert, die von der Datenquelle unterstützt werden. Bei Daten in einer SQL Server-Datenbank muss es sich zum Beispiel um einen der unterstützten SQL Server-Datentypen handeln, z. B. nvarchar oder datetime. Wenn Sie Daten aus einer Datenquelle abrufen, durchlaufen die Daten eine Datenverarbeitungserweiterung oder einen Datenanbieter, die bzw. der dem Datenquellentyp zugeordnet ist. Je nach Datenverarbeitungserweiterung können Daten aus den von der Datenquelle verwendeten Datentypen in von der Datenverarbeitungserweiterung unterstützte Datentypen konvertiert werden. Reporting Services verwendet Datentypen, die von der mit Business Intelligence Development Studio installierten CLR (Common Language Runtime) unterstützt werden. Der Datenanbieter ändert die Zuordnung der einzelnen Spalten des Resultsets vom systemeigenen Datentyp in einen CLR (Common Language Runtime)-Datentyp für .NET Framework.
In den einzelnen Phasen werden die Daten mithilfe der Datentypen dargestellt, die in der folgenden Liste beschrieben sind:
Datenquelle Die Datentypen, die von der Version des Datenquellentyps unterstützt werden, zu der Sie eine Verbindung herstellen.
Typische Datentypen für eine SQL Server-Datenquelle sind zum Beispiel int, datetime und varchar. Mit den von SQL Server 2008 eingeführten Datentypen wird die Unterstützung von date, time, datetimetz und datetime2 hinzugefügt. Weitere Informationen finden Sie unter Datentypen (Transact-SQL).
Datenanbieter oder Datenverarbeitungserweiterung Die Datentypen, die von der Version des Anbieters der Datenverarbeitungserweiterung unterstützt werden, die Sie beim Herstellen der Verbindung zur Datenquelle auswählen. Datenanbieter, die auf .NET Framework basieren, verwenden von der CLR unterstützte Datentypen. Weitere Informationen zu Datentypen des .NET Framework-Datenanbieters finden Sie auf der MSDN-Website unter Datentypzuordnungen (ADO.NET) und Arbeiten mit Basistypen.
Typische Datentypen, die von .NET Framework unterstützt werden, sind zum Beispiel Int32 und String. Datum und Uhrzeit für Kalender werden von der DateTime-Struktur unterstützt. Mit dem .NET Framework 2.0 Service Pack 1 wurde die Unterstützung der DateTimeOffset-Struktur für Daten mit einem Zeitzonenoffset eingeführt.
Hinweis Der Berichtsserver verwendet die Datenanbieter, die auf dem Berichtsserver installiert und konfiguriert wurden. Berichterstellungsclients im Vorschaumodus verwenden die installierten und konfigurierten Datenverarbeitungserweiterungen auf dem Clientcomputer. Sie müssen den Bericht sowohl in der Berichtsclient- als auch in der Berichtsserverumgebung testen.
Berichtsprozessor Die Datentypen basieren auf der Version der CLR, die bei der Installation von Reporting Services installiert wurde. SQL Server 2008 Reporting Services installiert die CLR basierend auf .NET Framework 3.5.
Die Datentypen, die der Berichtsprozessor für die neuen Datum- und Uhrzeittypen verwendet, die mit SQL Server 2008 eingeführt werden, sind in der folgenden Tabelle aufgeführt:
SQL-Datentyp
CLR-Datentyp
Beschreibung
Date
DateTime
Nur Datum
Time
TimeSpan
Nur Uhrzeit
DateTimeTZ
DateTimeOffset
Datum und Uhrzeit mit Zeitzonenoffset
DateTime2
DateTime
Datum und Uhrzeit mit Bruchteilen von Millisekunden
Weitere Informationen über SQL Server-Datenbanktypen finden Sie unter Datentypen (Datenbankmodul) und Datums- und Uhrzeitdatentypen und zugehörige Funktionen (Transact-SQL).
Weitere Informationen zum Einschließen von Verweisen auf ein Datasetfeld aus einem Ausdruck finden Sie unter Arbeiten mit Datentypen in Ausdrücken (Report Builder 3.0 und SSRS).
Zurück zum Anfang
Erkennen von fehlenden Feldern zur Laufzeit
Wenn der Bericht verarbeitet wird, sind im Resultset für ein Dataset möglicherweise nicht für alle angegebenen Spalten Werte enthalten, da die Spalten in der Datenquelle nicht mehr vorhanden sind. Über die Feldeigenschaft IsMissing können Sie ermitteln, ob zur Laufzeit Werte für ein Feld zurückgegeben wurden. Weitere Informationen finden Sie unter Verwenden von Verweisen auf Datasetfeldauflistungen (Berichts-Generator 3.0 und SSRS).
Zurück zum Anfang