2

皆様、 SSRS には、以下のように 2 つの列があります。

販売 | ランニングセールス
5.00 | 5.00
3.00 | 8.00
1.00 | 9.00

違いは、最初の列 (売上) がグループ化行であるため、行ごとの売上の合計を取得するには、=Sum(Fields!Sales.Value) を使用していることです。

ランニング バリューを使用してランニング セールス トータルを取得しようとすると、問題が発生します。集計関数はページのヘッダーとフッターでのみ使用できるという SSRS エラーが表示されます。この場合、フッターに合計を表示しても意味がありません。この問題の解決策/回避策を知っている人はいますか?

ありがとう。

4

1 に答える 1

3

私は同じ問題を抱えていました。これが私がそれを解決した方法です。

したがって、それ自体が合計関数である列を小計する方法は次のとおりです。SSRS 2005 では、集計関数を集計できません。たとえば、実行中の合計を示す列の合計は、毎日の在庫残高の計算に役立ちます。レポート > プロパティに次のコードを追加します。

Dim public totalBalance As Decimal 
Public Function AddTotal(ByVal balance As Decimal) AS Decimal totalBalance = totalBalance + balance return balance 
End Function 
Public Function GetTotal() return totalBalance 
End Function

このコードは、totalbalance と cnt の 2 つの変数を 10 進数として追加します。そして 2 つの関数AddTotalGetTotal. AddTotal行内のアイテムを合計できるようにします。値セルで次のように使用します。

=RunningTotal(Fields!ColumnName.Value,sum,nothing) 
with
=Code.AddTotal(RunningTotal(Fields!ColumnName.Value,sum,nothing))

単純に使用できなかった合計セルで

=sum(RunningTotal(Fields!ColumnName.Value,sum,nothing))
use instead
=Code.GetTotal()

複数のフィールドの合計を合計する必要がある場合は、変数とパブリック関数を追加するだけです。

http://blog.wingateuk.com/2011/09/ssrs-aggregate-of-aggregate.html

于 2013-04-12T07:35:29.207 に答える