2

グループごとに要約を表示する必要があるレポートを作成しています。このレポートには、レストランごとの製品ごとのデータが表示されます。また、地区ごとの製品別の表示データ (地区内のすべてのレストランの合計) も必要です。

Restaurant 1
  Pepperoni Pizzas: 10
  Cheese Pizzas: 12
  Ham Pizzas: 15

Restaurant 2
  Pepperoni Pizzas: 5
  Cheese Pizzas: 12
  Ham Pizzas: 20

District Totals
  Pepperoni Pizzas: 15
  Cheese Pizzas: 24
  Ham Pizzas: 25

私が取ったアプローチは、マスター レポートが渡すパラメーターに応じて、店舗、地区などのデータを表示するサブレポートを作成することです。これは、設計の観点からすると扱いにくく、実行時に時間がかかりますサブレポートを使用せずに地区の合計を作成する方法はありますか?

4

3 に答える 3

3

これは、1つのデータセット/レポートと必要な数の異なる食品タイプで実行できます。私はいくつかの基本的なデータを作成しました:

create table Pizza
(
  district varchar(100)
  , restaurant varchar(100)
  , foodItem varchar(100)
  , quantitySold int
)

insert into Pizza
select 'District 1', 'Restaurant 1', 'Pepperoni Pizzas', 10
union all
select 'District 1', 'Restaurant 1', 'Cheese Pizzas', 12
union all
select 'District 1', 'Restaurant 1', 'Ham Pizzas', 15
union all
select 'District 1', 'Restaurant 2', 'Pepperoni Pizzas', 5
union all
select 'District 1', 'Restaurant 2', 'Cheese Pizzas', 12
union all
select 'District 1', 'Restaurant 2', 'Ham Pizzas', 20

レポートの場合、地区グループ(必要な場合)とレストラングループを含む基本的なTablixを作成します。

ここに画像の説明を入力してください

ここでの秘訣は、最後の行のすべてのセルをマージし、今度はFoodグループに基づいて別のテーブルをセルに挿入することです。

ここに画像の説明を入力してください

これは地区スコープ内にあるため、基礎となるデータは特定の地区のすべての行に基づいています。最終結果:

ここに画像の説明を入力してください

これは、複数の地区で繰り返されます。必要に応じて外観を調整してください!

于 2013-01-22T14:22:49.280 に答える
1

コメントで述べたように、静的コンテンツまたはグループ内のグループを含む単純なグループを探しています。

サブレポートの使用を避けるには、最初の 2 つの例でレストランごとにグループ化する必要があります。これは既に行っていると思います。

静的コンテンツの場合District Totalsは、行を追加し、データ セルにすべてのピザの単純な合計を次のように入力します[Sum(PepperoniPizzas)]

グループ化されている場合は、同じことを行う必要がありますが、グループ化されたデータ内で行います。あなたの質問から、これはあなたが意図した2番目のシナリオです。データ全体が地区ごとにグループ化され、次にレストランごとにグループ化されている場合、これがあなたのやり方です:

レストランごとの内部グループと、フッター付きの地区ごとの外部グループを作成します。このフッターでは、上で説明したのと同じことを行う必要があります。次のようになります。

|--Group by District
|----Group by Restaurant
|------Details or another group
|----End of group by restaurant
|----
|----District Totals
|----Pepperoni Pizzas - [Sum(PepperoniPizzas)]
|----Cheese Pizzas - [Sum(CheesePizzas)]
|----Ham Pizzas - [Sum(HamPizzas)]
|--End of district group

今は家にいるのでレポートをお見せできませんが、上記の例はかなり理解しやすいと思います。これがあなたが必要としていたものかどうか教えてください。明日仕事に着いたら、レポートがどのように見えるかでこの回答を更新します。

アップデート

前述のとおり、レポートは次のようになります。

  • グループ

ここに画像の説明を入力

ここに画像の説明を入力

  • レポート自体

ここに画像の説明を入力

于 2013-01-21T21:22:59.090 に答える
0

データを個別に含める場合は、2 つ目のデータセットを追加します。

ただし、レポートのコードで「グループ化」に「合計」を表示する場合は、グループ化列「合計」を追加します。

EG: 私はあなたのような小さなデータセットを持っています:

declare @Pizza table ( restaurantid int identity, pizzas int)

insert into @Pizza values (10),(15),(5);

select * from @Pizza

唯一の値が「詳細」行のレストラン ID、ピザであるテーブルを作成し、ヘッダーに同様の名前を生成します。

合計が必要な場合は、左下の [デザイン] ビューで [行グループ] を確認する必要があります。下向き矢印 > [合計を追加] > [後] をクリックします。これまでのテーブルのすべてを合計する別の行を追加しました。レストラン ID のセル値は問題にならないので削除し、代わりに「Totals」などの便利なものを入力できます。

于 2013-01-21T18:17:20.483 に答える