用例 7:创建具有层次结构的自定义维
您可以通过定义基于父子级别的层次结构来创建具有层次结构的维。
预构建的 SCM –销售订单主题区域不包含所需的维–交易方层次结构维维属性和层次级别。在此用例中,您可以将文件夹维 - 交易方层次结构维添加到 SCM –销售订单预构建主题区域。此文件夹包含 Accounts Level Hierarchy(账户级别层次结构)层次结构,其中包含四个级别以及一个详细的最低级别。使用交易方 ID 键将具有层次结构的自定义维联接到预构建的事实 - OM 销售订单事实。
此用例需要订阅 Fusion SCM Analytics 。但是,您可以将本用例中介绍的概念应用于任何其他 Fusion Data Intelligence 订阅。该用例可以参考 Autonomous AI Lakehouse 预构建表和同义词,并模拟定制数据库表和视图。如果您已激活指定的 Fusion Data Intelligence 订阅,则可以使用提供的示例。建议将示例对象替换为您自己的定制 Autonomous AI Lakehouse 对象,例如定制表、实体化视图、视图、定制同义词或数据扩充数据集同义词。
- 预构建的主题区域: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 Worksheet(SQL 工作表)”下输入此 SQL 脚本,确认外键是唯一的,这样可以避免由于粒度错误而导致可能重复的结果不准确:
SELECT PARTY_ID, COUNT(*) FROM FDI_X_PARTY_HIERARCHY_D_V GROUP BY PARTY_ID HAVING COUNT(*) > 1;
将自定义详情添加到语义模型
您可以编辑逻辑星型,以定义自治数据仓库对象、属性、显示标签、键和层次结构。
将物理列添加到预生成事实以公开要连接的外键
您可以扩展预生成事实以公开将用作键的物理列,从而在逻辑星形中联接新的定制维。您必须为逻辑列指定唯一名称。
将自定义维层次结构联接到预生成事实
通过定义联接类型、联接条件和上下文级别,可以将定制维层次联接到预生成事实。虽然可以定义复杂联接,但尽可能使用标准联接。
在语义模型中呈现定制维层次
您可以修改主题区域以显示新的自定义维属性和层次级别。
系统将维表示为包含主题区域中的列的文件夹,并表示自定义维文件夹底部的层次级别。工作簿中使用的层次结构级别可以展开和折叠以显示或隐藏详细行。
在此步骤中,您将修改 SCM –销售订单主题区域,以显示新的自定义维–交易方层次结构维文件夹,其中包含具有四个级别(级别 1、级别 2、级别 3、级别 4)和最低详细级别的自定义层次结构客户级别层次结构。
















