Freigeben über


Vorbereiten von Daten für die Anzeige in einem Tablix-Datenbereich

Ein Tablix-Datenbereich zeigt Daten aus einem Dataset an. Sie können alle für das Dataset abgerufenen Daten anzeigen oder Filter erstellen, sodass nur eine Teilmenge der Daten angezeigt wird. Sie können auch bedingte Ausdrücke hinzufügen, um NULL-Werte aufzufüllen, oder die Abfrage für ein Dataset so ändern, dass Spalten mit Definitionen der Sortierreihenfolge für eine vorhandene Spalte enthalten sind.

Verwenden von NULL- und leeren Werten in Feldwerten

Daten für die Feldauflistung in einem Dataset enthalten alle zur Laufzeit aus der Datenquelle abgerufenen Werte, einschließlich von NULL- und leeren Werten. Normalerweise können NULL-Werte und leere Werte nicht unterschieden werden. Dies stellt in den meisten Fällen das gewünschte Verhalten dar. Beispielsweise ignorieren numerische Aggregatfunktionen wie Sum und Avg NULL-Werte. Weitere Informationen finden Sie unter Verwenden von integrierten Berichts- und Aggregationsfunktionen in Ausdrücken (Reporting Services).

Wenn Sie NULL-Werte auf andere Weise behandeln möchten, können Sie bedingte Ausdrücke oder benutzerdefinierten Code verwenden, um den NULL-Wert durch einen benutzerdefinierten Wert zu ersetzen. Durch den folgenden Ausdruck wird beispielsweise der Text Null für jeden NULL-Wert im Feld [Size] eingesetzt.

=IIF(Fields!Size.Value IS NOTHING,"Null",Fields!Size.Value)

Weitere Informationen über das Ausschließen von NULL-Werten in den Daten vor dem Abruf der Daten aus einer SQL Server Datenquelle mithilfe von Transact-SQL-Abfragen finden Sie unter NULL-Werte und NULL-Werte und Verknüpfungen.

Behandeln von NULL-Feldnamen

Die Überprüfung auf NULL-Werte in einem Ausdruck ist problemlos möglich, sofern das Feld selbst im Abfrageresultset vorhanden ist. Sie können in benutzerdefinierten Code überprüfen, ob das Feld selbst in den Auflistungsfeldern vorhanden ist, die zur Laufzeit von der Datenquelle zurückgegeben werden. Weitere Informationen finden Sie unter Verwenden von Verweisen auf Datasetfeldauflistungen in Ausdrücken (Reporting Services).

Hinzufügen einer Sortierenreihenfolge-Spalte

Standardmäßig können Sie Werte in einem Datasetfeld alphabetisch sortieren. Um in einer anderen Reihenfolge zu sortieren, können Sie dem Dataset eine neue Spalte hinzufügen, die die für den Datenbereich gewünschte Sortierreihenfolge definiert. Wenn Sie beispielsweise nach dem Feld [Color] mit weißen und schwarzen Elementen am Anfang sortieren möchten, können Sie die Spalte [ColorSortOrder] wie in der folgenden Abfrage hinzufügen:

SELECT ProductID, p.Name, Color,
   CASE
      WHEN p.Color = 'White' THEN 1
      WHEN p.Color = 'Black' THEN 2
      WHEN p.Color = 'Blue' THEN 3
      WHEN p.Color = 'Yellow' THEN 4
      ELSE 5
   END As ColorSortOrder
FROM Production.Product p

Um einen Tabellendatenbereich nach dieser Sortierreihenfolge zu sortieren, legen Sie den Sortierausdruck für die Detailgruppe auf =Fields!ColorSortOrder.Value fest. Weitere Informationen finden Sie unter Vorgehensweise: Sortieren von Daten in einem Datenbereich (Reporting Services).