傳回指定範圍內專案上一個實例的值或指定的匯總值。
備註
您可以在報表產生器及 SQL Server Data Tools 的報表設計師中建立和修改報表定義 (.rdl)。 每個撰寫環境提供不同的方式來建立、開啟及儲存報表和相關專案。 如需詳細資訊,請至 microsoft.com 網站上查看 報表設計師和報表產生器 (SSRS) 的報表設計。
語法
Previous(expression, scope)
參數
表示式
(Variant 或 Binary) 用來識別數據並擷取先前值的運算式,例如 Fields!Fieldname.Value 或 Sum(Fields!Fieldname.Value)。
範圍
(String) 選擇性。 群組或數據區的名稱,或 Null(Nothing 在 Visual Basic 中),指定要從中擷取 expression 所指定先前值的範圍。
返回類型
返回 Variant 或 Binary。
備註
指定範圍內,所有排序和篩選套用後,函數 Previous 傳回該表達式的先前值。
如果 expression 不包含匯總,此 Previous 函式會預設為報表專案的目前範圍。
在詳細數據群組中,使用 Previous 來指定上一個詳細數據列實例中字段參考的值。
備註
函 Previous 式僅支持詳細資料組中的欄位參考。 例如,在詳細數據群組的文字框中, =Previous(Fields!Quantity.Value) 傳回上一列欄位 Quantity 的數據。 在第一個數據列中,此表達式會傳回 null (Nothing 在 Visual Basic 中)。
如果 expression 包含使用預設範圍的聚合函數, Previous 則匯總聚合函數調用中所指定範圍上一個實例內的數據。
如果 expression 包含指定預設值以外的範圍的聚合函數,則函數Previous的範圍參數必須是聚合函數調用中所指定範圍的包含範圍。
Level函式、 InScopeAggregate 和 Previous 不能用在運算式參數中。 不支援指定任何聚合函數的 遞歸 參數。
如需詳細資訊,請參閱聚合函數參考(報表產生器及 SSRS)和總計、匯總和內建集合的運算式範圍(報表產生器及 SSRS)。
範例
說明
下列程式代碼範例會在放置於數據區的預設數據列時,提供上一個數據列中欄位 LineTotal 的值。
程式碼
=Previous(Fields!LineTotal.Value)
說明
下列範例顯示表達式,其會計算當月特定日的銷售總和,以及前一年當月當天的上一個值。 表達式會加入至屬於子群組 GroupbyDay 的行中的儲存格。 其父群組為 GroupbyMonth,其具有父群組 GroupbyYear。 表達式會顯示 GroupbyDay 的結果(預設範圍),然後顯示 GroupbyYear [父群組的父代 GroupbyMonth]。
例如,針對具有名為 Year之父群組的數據區,其子群組名為 Month,以及名為 Day 的子群組(3 個巢狀層級)。 與群組Day相關聯的數據列中的表達式=Previous(Sum(Fields!Sales.Value,"Day"),"Year")會傳回前一年同一天和月份的銷售值。
程式碼
=Sum(Fields!Sales.Value) & " " & Previous(Sum(Fields!Sales.Value,"GroupbyDay"),"GroupbyYear")
另請參閱
報表中的運算式用法 (報表產生器及 SSRS)
運算式範例 (報表產生器及 SSRS)
運算式中的資料類型 (報表產生器及 SSRS)
總計、匯總和內建集合的表達式範圍(報表產生器及 SSRS)