ナレッジベース
総計をブレンドされたデータと共に表示する
発行: 30 Jan 2013
最終修正日: 20 Jul 2023
ご質問
ブレンドされたデータを使用する際に総計を表示する方法。
たとえば、プライマリ データ ソース内の計算フィールドがセカンダリ データ ソース内のフィールドを参照している場合、総計として返された結果が期待した数値を反映していないことがあります。
回答
次の 3 種類のオプションはすべて "Superstore (スーパーストア)" サンプル データ セットを使用した添付のワークブックでも説明しています。オプション 1:
ブレンドではなくクロスデータベース結合を使用したデータソースの結合。手順については、手順については、「データの結合」を参照してください。オプション 2: WINDOW_SUM() を使用して計算を作成する
- リンク フィールドをセカンダリ データ ソースから [マーク] カードの [詳細] にドラッグします。
- 次のような計算で計算フィールドを作成します。
If FIRST()=0 THEN WINDOW_SUM(<Calculated Field that references Field in Secondary Data Source>) END
- セカンダリ データ ソースのフィールドを参照する計算フィールドを、ステップ 2 で作成した計算フィールドに置き換えます。
- 置き換える計算をシェルフで右クリックし、[表計算の編集...] を選択します。
- [表計算] ダイアログで、次を実行します。
- [特定のディメンション] を選択する
- リンク フィールドのみ選択する
- [分析] > [スタック マーク] > [オフ] に移動します。
- オプション: ビューのすべてのメジャーに対してステップ 2 ~ 5 を繰り返します。
注: この計算は、セカンダリ データ ソースのフィールドを参照して、プライマリ データ ソースに作成する必要があります。
オプション 3: INCLUDE を使用して計算を作成する
詳細レベル (LOD) INCLUDE の式で計算の非加算の部分がラップされるように元の計算を修正します。たとえば、次の計算があります。
AVG([Discount])
+ SUM([Category Costs].[Cost])
これを、次のようにできます。
SUM({ INCLUDE [Sub-Category] : AVG([Discount]) })
+ SUM([Category Costs].[Cost])
注: このオプションは、詳細レベルを決定するディメンションと非加算式が同じデータ ソースにある場合にのみ有効です。詳細レベル (LOD) 式には複数のデータ ソースのフィールドを含めることはできません。
詳細情報
この問題は、合計を [次を使用して合計] > [自動] に設定している場合に、非加算式、つまり合計の計算前に特定の詳細レベルでの計算が必要な式でのみ発生します。自動総計では、ビューの詳細レベルは無視され、データセット全体に対して計算を行います。たとえば、ビューに 1 日の平均が表示される場合、自動総計では 1 日の平均をすべて合計するのではなく、ビューのデータセット全体の平均が表示されます。
セカンダリ データ ソースのフィールドを使用した計算で表示できるのは、自動総計のみです。