したがって、プロセスのフェーズには次のような階層関係があります。
Overall Phase
|----Phase 1
|----Intermediate Phase
| |----Phase 2
| |----Phase 3
|----Phase 4
次に、これらのフェーズを通過する多くのオブジェクトがあります。これらのオブジェクトは、いくつかの異なるタイプの 1 つに属しており、それらを A、B、および C と呼びましょう。したがって、次のようなピボット レポートを作成して、異なるタイプごとに各フェーズで費やされた合計 (または平均) 時間を示します。
Phase A B C
Overall Phase 11 11 12
|----Phase 1 3 2 4
|----Intermediate Phase 6 6 6
| |----Phase 2 2 1 1
| |----Phase 3 4 5 5
|----Phase 4 2 3 2
ここで重要なことは、各フェーズにはそれに関連付けられた目標があり、実際の目標と簡単に比較できるようにすることです。それぞれの異なるタイプの列とペアになった目標列がある場所でそれを行うことができると思いますが、代わりに、次のように最後に目標のみを表示したい場合はどうでしょうか:
Phase A B C Goal
Overall Phase 11 11 12 13
|----Phase 1 3 2 4 3
|----Intermediate Phase 6 6 6 6
| |----Phase 2 2 1 1 2
| |----Phase 3 4 5 5 4
|----Phase 4 2 3 2 4
最初に考えたのはユニオン レポートを作成することでしたが、これは階層列ではサポートされていません。階層を展開または折りたたむと 2 つの同期が失われるため、別個のレポートを作成しても機能しません。これは私たちにとって新しい分野であり、そのようなことをどのように処理するかについて、概念的な空白を描いています。これを達成するために何をする必要があるかについてのアイデアはありますか?
現在の (簡略化された) テーブル構造は次のようなものです。
**Fact table**
OBJECT_FK
PHASE_FK
PHASE_START_DATE
PHASE_END_DATE
**Phase Dim**
PHASE_KEY
PHASE_NAME
PARENT_PHASE_KEY
GOAL
**Phase Hierarchy**
ID
PARENT_ID
LEVEL
IS_LEAF
**Object Dim**
OBJECT_KEY
TYPE