Freigeben über


Datasetfeldauflistung (Berichts-Generator und SSRS)

Datasetfelder stellen die Daten aus 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 Berichtsdatenbereich 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 Integrierte globale Werte und Benutzerreferenzen (Berichts-Generator und SSRS).

Datasetfeldnamen werden als Teil der Berichtsdatasetdefinition gespeichert. Weitere Informationen finden Sie unter Erstellen von Berichten zu eingebetteten und freigegebenen Datasets (Berichts-Generator und SSRS).

Hinweis

Sie können paginierte Berichtsdefinitionsdateien (.rdl) im Berichts-Generator von Microsoft, im Power BI Report Builder und im Berichts-Designer in SQL Server-Datentools erstellen und ändern.

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.

    Hinweis

    Berichtsteile sind für alle Releases von SQL Server Reporting Services ab SQL Server Reporting Services 2019 und für alle Releases von Power BI-Berichtsserver ab Power BI-Berichtsserver September 2022 veraltet.

  • 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 Hinzufügen, Bearbeiten und Aktualisieren von Feldern im Berichtsdatenbereich (Berichts-Generator und SSRS).

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 Hinzufügen, Bearbeiten und Aktualisieren von Feldern im Berichtsdatenbereich (Berichts-Generator und SSRS).

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 Berichtsdatenbereich sehen. Entitätsbezeichner werden automatisch vom Berichtsmodell generiert und werden in der Regel nicht für den Endbenutzer angezeigt.

Verwenden von erweiterten Feldeigenschaften

Datenquellen, die mehrdimensionale Abfragen wie SQL Server Analysis Services unterstützen, unterstützen auch Feldeigenschaften in Feldern. Feldeigenschaften werden im Resultset einer Abfrage angezeigt, sind im Bereicht 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 FormattedValueverfü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, UniqueNameund 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 zu erweiterten Feldeigenschaften für den Datenquellentyp unter Erstellen von Berichten zu eingebetteten und freigegebenen Datasets (Berichts-Generator und SSRS). Ein Beispiel einer SQL Server Analysis Services-Datenquelle finden Sie unter Erweiterte Feldeigenschaften für eine Analysis Services-Datenbank (SSRS).

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 (Berichts-Generator und SSRS).

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 Frameworkzugeordnet.

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 von den Datentypen, die von der Datenquelle verwendet werden, in Datentypen konvertiert werden, die von der Datenverarbeitungserweiterung unterstützt werden. Reporting Services verwendet Datentypen, die von der mit SQL Server Data Tools (SSDT)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, datetimeund varchar. Mit in SQL Server 2008 (10.0.x) eingeführten Datentypen wurde Unterstützung für 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 Servicesinstalliert war.

    Die Datentypen, die der Berichtsprozessor für die neuen Datums- und Uhrzeittypen verwendet, die mit SQL Server 2008 (10.0.x) 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 (Datenbank-Engine) 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 Datentypen in Ausdrücken (Berichts-Generator und SSRS).

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 Verweise auf Datasetfeldauflistungen (Berichts-Generator und SSRS).