Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Gibt den Wert oder den angegebenen Aggregatwert für die vorherige Instanz eines Elements innerhalb des angegebenen Bereichs zurück.
Hinweis |
|---|
Sie können Berichtsdefinitionen (RDL) in Berichts-Generator und im Berichts-Designer in SQL Server-Datentools 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 (SSRS) im Web auf microsoft.com. |
Syntax
Previous(expression, scope)
Parameter
expression
(Variant oder Binary) Der Ausdruck, mit dem die Daten identifiziert werden und für den der vorherige Wert abgerufen wird. Beispiel: Fields!Fieldname.Value oder Sum(Fields!Fieldname.Value).scope
(String) optional. Der Name einer Gruppe oder eines Datenbereichs oder NULL (Nothing in Visual Basic), der den Bereich angibt, aus dem der durch expression angegebene vorherige Wert abgerufen wird.
Rückgabetyp
Gibt einen Variant- oder Binary-Wert zurück.
Hinweise
Die Previous-Funktion gibt den vorherigen Wert für den Ausdruck zurück, der in dem angegebenen Bereich ausgewertet wird, nachdem die Sortierfunktionen und Filter angewendet wurden.
Wenn expression kein Aggregat enthält, wird die Previous-Funktion standardmäßig auf den aktuellen Bereich für das Berichtselement festgelegt.
Verwenden Sie in einer Detailgruppe Previous, um den Wert eines Feldverweises in der vorherigen Instanz der Detailzeile anzugeben.
Hinweis |
|---|
Von der Previous-Funktion werden nur Feldverweise in der Detailgruppe unterstützt. Beispielsweise werden in einem Textfeld in der Detailgruppe durch =Previous(Fields!Quantity.Value) die Daten für das Feld Quantity aus der vorherigen Zeile zurückgegeben. In der ersten Zeile gibt dieser Ausdruck NULL zurück (Nothing in Visual Basic). |
Wenn expression eine Aggregatfunktion enthält, die einen Standardbereich verwendet, aggregiert Previous die Daten innerhalb der vorherigen Instanz des im Aggregatfunktionsaufruf angegebenen Bereichs.
Enthält expression eine Aggregatfunktion, die nicht den Standardbereich angibt, muss es sich beim scope-Parameter für die Previous-Funktion um einen enthaltenen Bereich des im Aggregatfunktionsaufruf angegebenen Bereichs handeln.
Die Funktionen Level, InScope, Aggregate und Previous können im expression-Parameter nicht verwendet werden. Die Angabe des recursive-Parameters für eine Aggregatfunktion wird nicht unterstützt.
Weitere Informationen finden Sie unter Aggregatfunktionsreferenz (Berichts-Generator und SSRS) und Ausdrucksbereich für Gesamtwerte, Aggregate und integrierte Auflistungen (Berichts-Generator und SSRS).
Beispiele
Beschreibung
Das folgende Codebeispiel stellt bei Angabe in der Standarddatenzeile eines Datenbereichs den Wert für das Feld LineTotal in der vorherigen Zeile bereit.
Code
=Previous(Fields!LineTotal.Value)
Beschreibung
Das folgende Codebeispiel zeigt einen Ausdruck, der die Summe der Umsätze an einem bestimmten Tag des Monats und den vorherigen Wert für den Tag des Monats in einem vorhergehenden Jahr berechnet. Der Ausdruck wird einer Zelle in einer Zeile, die zur untergeordneten Gruppe GroupbyDay gehört, hinzugefügt. Die übergeordnete Gruppe ist GroupbyMonth, deren übergeordnete Gruppe wiederum GroupbyYear ist. Der Ausdruck zeigt die Ergebnisse für GroupbyDay (Standardbereich) und anschließend für GroupbyYear (der übergeordneten Gruppe der übergeordneten Gruppe GroupbyMonth) an.
Für einen Datenbereich mit einer übergeordneten Gruppe namens Year ist die entsprechende untergeordnete Gruppe beispielsweise Month, der wiederum die Gruppe Day untergeordnet ist (drei geschachtelte Ebenen). Der Ausdruck =Previous(Sum(Fields!Sales.Value,"Day"),"Year") in einer mit der Gruppe Day verknüpften Zeile gibt den Umsatzwert für denselben Tag und Monat des vorherigen Jahrs zurück.
Code
=Sum(Fields!Sales.Value) & " " & Previous(Sum(Fields!Sales.Value,"GroupbyDay"),"GroupbyYear")
Siehe auch
Verweis
Beispiele für Ausdrücke (Berichts-Generator und SSRS)
Konzepte
Ausdrucksverwendungen in Berichten (Berichts-Generator und SSRS)
Hinweis