アイテムの、指定されたスコープ内の直前のインスタンスに対応する値または指定された集計値を返します。
注
レポート定義 (.rdl) は、レポート ビルダーと SQL Server Data Tools のレポート デザイナーで作成および変更できます。 作成環境ごとに、レポートと関連アイテムを作成、開く、保存するさまざまな方法が用意されています。 詳細については、Web 上の microsoft.com にある レポート デザイナーおよびレポート ビルダー (SSRS) でのレポートのデザイン を参照してください。
構文
Previous(expression, scope)
パラメーター
式
(Variant または Binary) データを識別し、前の値を取得するために使用する式 ( Fields!Fieldname.Value や Sum(Fields!Fieldname.Value)など)。
スコープ
(String) 省略可能。 グループまたはデータ領域の名前、もしくは null (Visual Basic の Nothing)、式 で指定された前の値を取得するスコープを指定します。
返り値の種類
VariantまたはBinaryを返します。
注釈
Previous関数は、すべての並べ替えとフィルター処理が適用された後、指定したスコープで評価された式の前の値を返します。
式に集計が含まれていない場合、Previous関数は既定でレポート アイテムの現在のスコープに設定されます。
詳細グループで、 Previous を使用して、詳細行の前のインスタンスのフィールド参照の値を指定します。
注
Previous関数は、詳細グループ内のフィールド参照のみをサポートします。 たとえば、詳細グループのテキスト ボックスの場合、 =Previous(Fields!Quantity.Value) では、直前の行から Quantity フィールドのデータが返されます。 最初の行では、この式は null (Visual Basic では Nothing ) を返します。
式に既定のスコープを使用する集計関数が含まれている場合、Previousは集計関数呼び出しで指定されたスコープの前のインスタンス内のデータを集計します。
式に既定以外のスコープを指定する集計関数が含まれている場合、Previous関数のスコープ パラメーターは、集計関数呼び出しで指定されたスコープの包含スコープである必要があります。
関数 Level、 InScope、 Aggregate 、および Previous を 式パラメーターで使用することはできません。 集計関数に recursive パラメーターを指定することはサポートされていません。
詳細については、「集計関数リファレンス (レポート ビルダーおよび SSRS)」および「合計、集計、および組み込みコレクションの式のスコープ (レポート ビルダーおよび SSRS)」を参照してください。
例示
説明
次のコード例は、データ領域の既定のデータ行に配置されると、直前の行の LineTotal フィールドの値が表示されます。
コード
=Previous(Fields!LineTotal.Value)
説明
次の例では、特定の月日の売上合計と、前年のその月日の値を計算する式を示します。 この式は、子グループ GroupbyDayに属する行内のセルに追加されます。 その親グループは GroupbyMonthで、このグループの親グループは GroupbyYearです。 この式では、GroupbyDay (既定のスコープ) の結果、次に GroupbyYear (親グループ GroupbyMonthの親) の結果が表示されます。
たとえば、親グループが Year、その子グループが Month、そのまた子グループが Day という名前のデータ領域 (入れ子レベル 3) の場合、 グループ =Previous(Sum(Fields!Sales.Value,"Day"),"Year") に関連付けられた行内の式 Day は、前年の同じ月日の売上高の値を返します。
コード
=Sum(Fields!Sales.Value) & " " & Previous(Sum(Fields!Sales.Value,"GroupbyDay"),"GroupbyYear")
こちらもご覧ください
レポートでの式の使用 (レポート ビルダーおよび SSRS)
式の例 (レポート ビルダーおよび SSRS)
式で使用されるデータ型 (レポート ビルダーおよび SSRS)
合計、集計、および組み込みコレクションの式のスコープ (レポート ビルダーおよび SSRS)