Udostępnij przez


Funkcje programu Report Builder — poprzednia funkcja w raporcie podzielonym na strony (Report Builder)

Dotyczy: Microsoft Report Builder (SSRS) Power BI Report Builder Projektant raportów w narzędziu SQL Server Data Tools

Zwraca wartość lub określoną wartość agregowaną dla poprzedniego wystąpienia elementu w określonym zakresie w raporcie podzielonym na strony.

Uwaga / Notatka

Pliki definicji raportu podzielonego na strony (rdl) można tworzyć i modyfikować w programie Microsoft Report Builder, programie Power BI Report Builder i w projektancie raportów w narzędziach SQL Server Data Tools.

Składnia

  
Previous(expression, scope)  

Parametry

expression
(Wariant lub Binarny) Wyrażenie używane do identyfikowania danych i pobierania poprzedniej wartości, na przykład Fields!Fieldname.Value lub Sum(Fields!Fieldname.Value).

zakres
(Ciąg) Opcjonalny. Nazwa grupy lub regionu danych albo wartość null (Nic w Visual Basic), która określa zakres, z którego ma być pobierana poprzednia wartość określona przez wyrażenie.

Zwracany typ

Zwraca wariant lub plik binarny.

Uwagi

Funkcja Previous zwraca poprzednią wartość wyrażenia obliczonego w określonym zakresie po zastosowaniu wszystkich sortowania i filtrowania.

Jeśli wyrażenie nie zawiera agregacji, funkcja Previous domyślnie odwołuje się do bieżącego zakresu dla elementu raportu.

W grupie szczegółów użyj polecenia Wstecz , aby określić wartość odwołania do pola w poprzednim wystąpieniu wiersza szczegółów.

Uwaga / Notatka

Funkcja Previous obsługuje tylko odwołania do pól w grupie szczegółów. Na przykład, w polu tekstowym w grupie szczegółów =Previous(Fields!Quantity.Value), zwracane są dane dla pola Quantity z poprzedniego wiersza. W pierwszym wierszu to wyrażenie zwraca wartość null (Nic w Visual Basic).

Jeśli wyrażenie zawiera funkcję agregacji, która używa zakresu domyślnego, Previous agreguje dane w poprzednim wystąpieniu zakresu określonego w wywołaniu funkcji agregującej.

Jeśli wyrażenie zawiera funkcję agregacji, która określa zakres inny niż domyślny, parametr zakresu dla funkcji Previous musi być zakresem zawierającym zakres określony w wywołaniu funkcji agregującej.

W parametrze wyrażenia nie można używać funkcji Level, InScope, Aggregate i Previous. Określanie parametru cyklicznego dla każdej funkcji agregującej nie jest obsługiwane.

Aby uzyskać więcej informacji, zapoznaj się z Odwołanie do funkcji agregujących (Report Builder i SSRS) i Zakres wyrażeń dla sum, agregacji i wbudowanych kolekcji (Report Builder i SSRS).

Przykłady

Description

Poniższy przykład kodu, umieszczony w domyślnym wierszu danych regionu danych, zawiera wartość pola LineTotal w poprzednim wierszu.

Code

=Previous(Fields!LineTotal.Value)  

Description

W poniższym przykładzie pokazano wyrażenie, które oblicza sumę sprzedaży w określonym dniu miesiąca i poprzedniej wartości dla tego dnia miesiąca w poprzednim roku. Wyrażenie jest dodawane do komórki w wierszu należącym do podrzędnej grupy GroupbyDay. Jej grupa nadrzędna to GroupbyMonth, która ma grupę GroupbyYearnadrzędną . Wyrażenie wyświetla wyniki dla GroupbyDay (domyślny zakres), a następnie dla GroupbyYear (element nadrzędny grupy nadrzędnej GroupbyMonth).

Na przykład w przypadku regionu danych z grupą nadrzędną o nazwie Year, jej grupą podrzędną o nazwie Month, i grupą podrzędną o nazwie Day (3 poziomy zagnieżdżenia). Wyrażenie =Previous(Sum(Fields!Sales.Value,"Day"),"Year") w wierszu skojarzonym z grupą Day zwraca wartość sprzedaży dla tego samego dnia i miesiąca dla poprzedniego roku.

Code

=Sum(Fields!Sales.Value) & " " & Previous(Sum(Fields!Sales.Value,"GroupbyDay"),"GroupbyYear")