SAP Universe Designer - 聚合感知



在 UDT 中,您可以选择对数据库中的聚合表运行查询。可以设置条件,并且该查询将针对聚合表运行以优化查询。这种使用聚合表的方法称为聚合感知。

要在 Universe 中使用聚合感知,您可以使用名为 @Aggregate_Aware 的函数在对象的“选择”语句中,该函数将查询引导到针对聚合表运行,而不是包含非聚合数据的表。

要在 Universe 中使用聚合感知,您需要按聚合级别排列对象,并且对象是使用 @aggregate_awareness 函数构建的。要构建聚合感知对象,您需要首先识别对象:度量或维度对象。您需要找出所有表中所有可能的聚合对象组合,然后按聚合级别顺序排列它们。

例如 -

  • AAYEAR.Profit 是最高级别的聚合。
  • AAQTR.Profit 是下一个级别。
  • AAMONTH.Profit 是最低级别的聚合。

使用 @aggregate_aware 函数将对象引导到查询所有聚合表作为其参数。您可以在“选择”语句中看到使用 @aggregate_aware 函数的对象 -

Aggregate Aware Function

aggregate_aware 函数的语法如下 -

@Aggregate_Aware(sum(agg_table_1), ... sum(agg_table_n))

将所有聚合表的名称作为参数传递。Agg_table_1 是具有最高聚合级别的聚合,而 agg_table_n 是具有最低聚合级别的聚合。

使用 @aggregate_aware 函数定义对象

打开对象的编辑属性对话框→单击对话框旁边的“>>”按钮。

Defining Object

在“编辑选择语句”对话框中,您需要单击 SELECT 语句的开头。

或者,如果对象没有 SELECT 语句,则可以在选择框中的任何位置单击。

Sales Revenue

您可以在右侧的函数列表中看到 @aggregate_aware 函数。根据此函数的描述:“@Aggregate_Aware(sum(aggregate table1),...,sum(aggregate tableN)) 使用预先计算的聚合表定义度量对象”。

广告