ユースケース7: 階層を使用したカスタム・ディメンションの作成
階層を持つディメンションを作成するには、親子レベルベースの階層構造を定義します。
事前作成済のSCM - 受注サブジェクト領域には、必要な「ディメンション- パーティ階層ディメンション」ディメンション属性および階層レベルが含まれていません。このユース・ケースでは、「ディメンション- パーティ階層ディメンション」フォルダを「SCM - 受注」事前作成サブジェクト領域に追加します。このフォルダには、4つのレベルと詳細の最下位レベルの「勘定科目レベル階層」階層が含まれます。階層を持つカスタム・ディメンションは、「パーティID」キーを使用して、事前作成済の「ファクト- OM受注」ファクトに結合されます。
このユースケースには、Fusion SCM Analyticsのサブスクリプションが必要です。ただし、このユース・ケースで説明する概念は、他のFusion Data Intelligenceサブスクリプションに適用できます。ユース・ケースでは、Autonomous Data Warehouseの事前作成済表およびシノニムを参照し、カスタム・データベースの表およびビューを模擬する場合があります。指定されたFusion Data Intelligenceサブスクリプションをアクティブ化した場合は、提供されたサンプルを使用できます。サンプル・オブジェクトを、カスタム表、マテリアライズド・ビュー、ビュー、カスタム・シノニム、データ拡張データセット・シノニムなどの独自のカスタムAutonomous Data Warehouseオブジェクトに置き換えることをお薦めします。
- 事前作成済サブジェクト領域: SCM - 受注
- MySandbox5Mar25という名前のサンドボックスを作成します。サンドボックスの作成を参照してください。または、「セマンティック・モデル拡張」ページで既存のサンドボックスを編集します(たとえば、MySandbox5Mar25サンドボックスをクリック)。
- 次のSQLスクリプトを使用して、サンプル・ディメンション・ビューFDI_X_PARTY_HIERARCHY_D_Vを生成します。
CREATE OR REPLACE FORCE EDITIONABLE VIEW "OAX_USER"."FDI_X_PARTY_HIERARCHY_D_V" ("PARTY_ID", "LVL1", "LVL2", "LVL3", "LVL4", "LVL_DETAIL") DEFAULT COLLATION "USING_NLS_COMP" AS ( SELECT DISTINCT PARTY_ID, NVL(COUNTRY,'~No Value~') as LVL1, NVL(STATE,'~No Value~') as LVL2, NVL(CITY,'~No Value~') as LVL3, NVL(POSTAL_CODE,'~No Value~') as LVL4, NVL(PARTY_NAME,'~No Value~') as LVL_DETAIL FROM OAX$OAC.DW_PARTY_D where (CUSTOMER_FLAG <> 'N' or CUSTOMER_FLAG is null) );
- 次のSQLスクリプトを使用して、OAX$OACスキーマのFDI_X_PARTY_HIERARCHY_D_Vビューへのセマンティク・モデル・アクセス権を付与します。
GRANT SELECT ON "OAX_USER"."FDI_X_PARTY_HIERARCHY_D_V" TO "OAX$OAC";
- 次のSQLスクリプトを使用して、想定どおりにサンプルからデータがロードされていることを確認します。
SELECT * FROM OAX_USER.FDI_X_PARTY_HIERARCHY_D_V;
- SQL Developer Clientの右ペインのSQLワークシートの下にこのSQLスクリプトを入力して、粒度の誤りが原因で発生する可能性のある重複による不正確な結果を回避するために、外部キーが一意であることを確認します。
SELECT PARTY_ID, COUNT(*) FROM FDI_X_PARTY_HIERARCHY_D_V GROUP BY PARTY_ID HAVING COUNT(*) > 1;
セマンティック・モデルへのカスタム・ファクトの追加
論理スターを編集して、自律型データ・ウェアハウス・オブジェクト、属性、表示ラベル、キーおよび階層を定義します。
結合する外部キーを公開する事前作成ファクトへの物理列の追加
事前作成済のファクトを拡張して、論理スターの新しいカスタム・ディメンションを結合するためのキーとして使用される物理列を公開します。論理列には一意の名前を指定する必要があります。
カスタム・ディメンション階層の事前作成済ファクトへの結合
結合タイプ、結合条件およびコンテキスト・レベルを定義して、カスタム・ディメンション階層を事前作成済ファクトに結合します。複合結合を定義できますが、可能な場合は標準結合を使用することをお薦めします。
セマンティック・モデルでのカスタム・ディメンション階層の表示
サブジェクト領域を変更して、新しいカスタム・ディメンション属性および階層レベルを表示します。
ディメンションは、サブジェクト領域の列を含むフォルダとして表され、カスタム・ディメンション・フォルダの下部にある階層レベルを表します。ワークブックで使用される階層レベルは、展開および縮小して、詳細行を表示または非表示にできます。
このステップでは、「SCM - 受注」サブジェクト領域を変更して、4つのレベル(レベル1、レベル2、レベル3、レベル4)および最下位の詳細レベルを持つカスタム階層「勘定科目レベル階層」を含む新しいカスタム「ディメンション- パーティ階層ディメンション」フォルダを表示します。