2016-08-29 14 views
0

まず部門別にグループ化し、部門別に並べ替えます。それは、各部門内の総費用によって再び分類されます。私は各部門の単価とコストの合計を表示することになっています。 10個のバーコードの合計を表示することになっています。それは合計を表示しますが、その部門内に存在するすべてのバーコードの合計を示しています。例:部門Aの総単位は19でなければなりませんが、私が試した部門A.、トップNであり、10本の以上のバーコードので、ここで
enter image description hereSSRSレポートの各グループの最後にトップ10を表示するには?

RunningValueを試みたが、それは、合計を実行している私を与え示すように、57を表示しています。私は各部門ごとに別々に合計が必要です。

 =RunningValue(Fields!Units.Value, Sum, Nothing) 

私も同様の質問を見ましたが、うまくいきませんでした。 How to get total of top 10 sales in SSRS 2012。 ここに私の現在の出力です:

は、部門Aの場合:ユニット合計は19であるべきで、総コストは以下のようになります。

enter image description here

出力があるべき部門Bについては144.40

:合計ユニットは378で、合計コストは6097.70

ここは私のデザインビューです:us集計するために、次のINGの:私はあなたが部門

部門Aで

Sum()のためのショーtop 10レコードのTOP Nを使用し、正しく理解していれば

=Sum(Fields!units.Value) 
=Sum(Fields!totalcost.Value) 

enter image description here

+0

デザインビューでテーブルのスクリーンショットを追加できますか?私はあなたの混乱を招くバーコード値を集計していないと思います。 – iamdave

+0

テーブルデザインのスクリーンショットが、上記の2つの式と一致しません。 'Total Cost'は正しいかもしれませんが、ユニットの詳細行に' [units] 'というテキストが表示されているので、確かにそこに投稿されている公式は使用していません:http://imgur.com/kYzr1fd – iamdave

答えて

1

は(部門の57、それは合計だからすべての行を表示します10レコード以上)

私はあなたに次のコードのようなものを各部門の10レコードだけを選択してクエリを使用します。

SELECT q.Dept 
    ,q.Barcode 
    ,q.Unit 
    ,q.TotalCost 
FROM (
    SELECT t.Dept 
     ,t.Barcode 
     ,t.Unit 
     ,t.TotalCost 
     ,DENSE_RANK() OVER (PARTITION BY t.Dept ORDER BY t.TotalCost) AS [r] 
    FROM YourTables t 
) q 
WHERE q.r BETWEEN 1 AND 10 
+0

はいChanomそれは正しいですが、私はクエリを変更することはできません。すべてのクライアントのクエリデータを呼び出す共通のStoredProcedureがあります。この特定のクライアントのレポートを変更するだけで済みます。クエリを変更すると、他のクライアントのためにレポートが混乱することになります。 – Everest

+0

@エベレスト - StoreProcedureで取得したサンプルデータとクエリを含むイメージをデータセットに投稿できます –

+0

データとプロシージャは実際のクライアントからのものです。投稿することはできませんが、私たちはそれを機能させました。上記のコメントをご確認ください。ありがとう、結構です。 – Everest

1

ソースクエリが正しいと仮定すると、テーブルサマリーも正しいです。単位詳細フィールドに[sum(units)]の代わりに[units]があるため、グループの値の最初の行のみが表示されます。この式を変更すると、テーブルが正しく追加されます。

何かが間違っていると思われる前に、ソースデータを調べることをお勧めします。ソースデータが手動で期待値に加算されない場合は、ソースデータが間違っているか、期待値が間違っています。

+0

ソースクエリが正しいデータを返しています。各列の単位と合計単位は問題ありません。私は、各部門の下部にある合計で問題があります。上記のレポートに表示されているすべての行の合計を表示するだけです。 – Everest

+0

@エベスト私は、あなたの個人の「単位」の価値は、一行の価値であり、グループのすべてではないことを保証することができます。 '[units]'を '[sum(units)]に変更すると、あなたのテーブルはどうなりますか? – iamdave

+0

[sum(units)]との効果はありません。ありがとう、結構です。 – Everest

関連する問題