2016-08-10 3 views
0

Powerpivotで複数のmany2many関係を処理する方法について質問があります。ここに私のシナリオです:私は、製品ごとの収益としてテーブルを持って、たとえば私の最初の表はExcel Powerpivotで(複数の)many2many関係を扱う

Products | Category 
    P1 | C1 
    P1 | C2 
    P2 | C1 

次であるので、私は、各製品が少なくとも一つに割り当てられている製品の束が、潜在的に複数のカテゴリを持っています季節は私が欲しいもの(時間)

Product | Season | Revenue 
    P1 | 201606 | 10 
    P1 | 201607 | 20 
    P2 | 201606 | 15 
    P2 | 201607 | 25 

は私の収入は(したがって、私は時間とカテゴリ階層で追加のテーブルを作成します)時間などカテゴリ別に分けることができるように、メジャーを作成することです。完全に展開すると、私の最終的な結果は

Cat/Season | 06 | 07 | 2016 
    C  | 25 | 45 | 70 
    1  | 25 | 45 | 70 
    2  | 10 | 15 | 25 

私は時間ディメンションを持っていない場合は、私は例 http://www.powerpivotpro.com/2012/11/a-mystifying-and-awesome-solution-for-many-2-manyhttp://sqlblog.com/blogs/marco_russo/archive/2009/12/07/many-to-many-relationships-in-powerpivot.aspxのために、解決策を発見しましたが、時間次元で私は意図を生成することができませんでしたのようになります。溶液。誰でも私を啓発することはできますか?

+0

「Cat 1」と「06」列では25をどのように計算しますか?最終結果がどのように計算されるかを詳細に説明する。 –

+0

@alejandrozuleta残念ながら、最初のテーブルに間違いがあり、製品2はカテゴリC1に属するはずです。私は記事を修正しました、私は最終結果が明らかになることを今願っています。そうでない場合は、私に知らせてください。 – bratwoorst711

答えて

0

質問で追加した投稿に見たように、M対Mの関係をモデリングするためのヘルパーテーブルを作成する必要があります。

異なる製品を保持するProductという1つの列を持つDistinctProductという表を作成します。収益のテーブルで

enter image description here

MonthYearと呼ばれる2つの列を作成します。また、 TotalRevenueというメジャーを作成します。このモデルは、あなたは、ピボットテーブルを使用することができます完了すると、

enter image description here

にピボットテーブルの列とCategoryMonth列を追加します。

Month = RIGHT(RevenueTable[Season],2) 

Year = LEFT(RevenueTable[Season],4) 

TotalRevenue = SUM(Revenue[Revenue]) 

それからちょうどこのER図に示すようにテーブルを関連付けますこれと同様の表が作成されます。

enter image description here

このことができますなら、私に教えてください。

+0

残念ながら、それはうまくいきませんでした![モデル](http://imgur.com/a/aD2Jg)実際には、カテゴリ階層をレポートに追加すると、1つの製品テーブルを介して2つのテーブルが接続されていても、Excelは接続の不一致を訴えていました。 – bratwoorst711

+0

@ bratwoorst711、階層の代わりにカテゴリを追加してみてください。あなたの階層がどのように構造化されているのかわからないので、あなたの問題がなぜ残っているのか分かりません。 –

+0

代わりにカテゴリを使用しようとしましたが、問題は残ります。 C1はレベル1の「C」、レベル2は「1」、C2はレベル1の「C」、レベル2は「2」である。 – bratwoorst711