本主题提供不同提取选项的一些示例,例如节点和祖先筛选器、最大深度和平衡填充选项,以说明使用层代提取的不同方式。
Tip:
平衡层次是所有底层节点都位于相同级别的层次。
不平衡层次(或自然层次)是底层节点位于不同级别的层次。
您可以使用最大深度和平衡填充选项字段来平衡不平衡层次,方法为重复父代、节点或顶级节点,以便将所有底层节点放在相同级别。说明见“示例 2:在不平衡层次中使用平衡填充选项”。
示例 1:平衡层次中的节点和祖先筛选器
在此示例中,我们将使用节点和祖先筛选器按区域提取销售代表的报表。我们将使用节点筛选器以仅返回底层节点,然后我们将使用祖先筛选器来减少报表,方法为通过筛选出各州来按区域获得报表。因为这是平衡层次,我们不需要使用平衡填充选项。
对于此示例,我们使用的层次将具有名为 Sales Representative by Territory (SRT) 的顶级节点,其下有多个区域节点:Midwest (MW)、Northeast (NE)、Southeast (SE)、Southwest (SW) 和 West (W)。每个区域在其下具有一系列州(例如,在 Midwest 下为 Iowa、Illinois、Indiana、Michigan 和 Ohio),而每个州具有一系列销售代表作为底层节点:
首先,我们将提取节点及其祖先的名称,方法是将祖先的 Core.Name
和节点的 Core.Name
添加到提取中(请参阅下面插图中的列)。
请注意,提取中的多个行包含的信息在我们的报表中没有用处。例如,行 2、3 和 4 包含祖先信息,但不包含具有我们要查找的销售代表信息的底层节点。我们可以使用节点筛选器表达式(显示在插图中)来仅返回底层节点。
接下来,我们要减少我们的提取,以按区域(而不是按州)显示销售代表。这需要对我们的提取进行两个更改。首先,我们需要标识存储州信息的祖先级别。我们通过指定最大深度(请参见插图)来实现这一点,以便提取将标题信息添加到每列。请注意,列 A、B、C 和 D 现在都具有用于标识级别和节点名称的标题。
现在我们知道州信息位于祖先级别 3,我们可以添加祖先筛选器来筛选出级别 3,并返回我们正在查找的区域信息。祖先筛选器显示在插图中。请记住,现在我们正筛选出一个级别,我们需要将“最大深度”更改为 3,而不是 4。
我们通过添加一些其他列(例如 Employee ID、Start Date 和 Job Title(见插图))并使用自定义标题来标识报表中的信息,从而完成报表。
示例 2:在不平衡层次中使用平衡填充选项
接下来,我们看一个使用“平衡填充选项”来平衡不平衡层次的示例。这次我们将使用帐户层次。请注意,底层节点 1770 Goodwill Asset
和 7110 Advertising
位于层次中的不同级别。
我们以最大深度 8 提取此层次时,底层节点 1770 Goodwill Asset
的级别 5、6 和 7 的列具有 null 值,使此层次不平衡。
我们在平衡填充选项中选择重复父代,在没有值的位置用父代名称和描述填充层次(下面红色突出显示区域)。层次现在已平衡。