高级列表设计器选项

高级窗格中,可更改列表的行为和表示形式。

常规

“常规”部分具有四个可定义列表数据源的字段。即,数据连接、多维数据集、维度和列表所基于的层次结构。每个字段包括<编辑公式>选项。例如,可用来生成与变量具有依存关系的维度。例如,如果要创建动态报告,即用户可在报告中使用拖放操作来交换列和行维度,那么便需要此项。在这种情况下,可在单独的变量中存储列和行维度并生成与这些变量具有依存关系的维度。

层次结构

下表显示“高级”窗格中的层次结构选项。
选项 说明
不重复 指定是否显示在列表中多次存在的元素。可排除具有相同唯一名称的元素,或排除具有相同名称的元素。

选择全部显示以显示所有元素,包括重复项。

可指定公式以控制重复项的排除。

分级排列 按级别显示层次结构。各个级别都会缩进。
反向层次结构 反向层次结构以使子级元素显示在父级元素上方。
在向下追查时确定结构
注意事项
如果使用不正确,此选项可导致元素隐藏且无法访问。
可静态或动态计算列表。静态计算一次从服务器加载列表的所有元素。动态计算仅在展开列表时加载元素。

使用哪个方法将影响性能,每种情况下使用哪种计算方法由不同因素确定。例如,如果列表不是分级排列,则始终使用静态计算。

动态计算使用列表的 .children 属性。这通常是最快的计算列表的方法。

无论列表的结构为何,“详查时保护结构”选项都强制使用 .children 属性。

如果使用结构选择、筛选器或自定义 MDX,可正常创建中断的层次结构。例如,可从此层次结构中排除“北/南美洲:世界>北/南美洲>北美洲”。

在本例中,如果“详查时保护结构”为真,则展开 World 元素时不返回结果。

列表

下表显示“高级”窗格中的列表选项:

选项 说明
可缓存

默认情况下,服务器列表缓存并存储在内存中,与数据库服务器相比,从内存可更加高效地检索服务器列表。这特别有益于使用频繁的列表。每两分钟就会检查一次缓存状态来保持数据一致性。必须检查数据一致性,因为每个实例(用户)都有各自的缓存。如果用户对列表进行了更改,则可能需要花费两分钟的时间将这些更改更新到其他用户的缓存中。

如果有许多用户同时频繁更新报告,则缓存功能的益处可能会因为需要更频繁地更新报告而被埋没。在这种情况下,将“可缓存”设置为“假”。

说明 或者,添加列表的文本说明。

子集

将 SUBSET 函数设置为“真”后,会启用三个参数。分别是“计数”、“基本元素”和“起点”。用这三个参数可定义子集,以控制要显示的本地列表元素。

可定义要显示在子集中的元素数量(计数)。然后,在层次结构中指定子集相对于所选元素(基本元素)的起始点(起点)。起始点可与基本元素相同,也可是基本元素下的若干元素。

示例

“示例”应用程序的“分析”多维数据集的“产品”维度是一个产品列表,含有产品组、产品子集团和各种产品。以 All Products 作为基本元素和起点的三元素子集中,会显示 Product 层次结构的前三个元素(“All Tires”、第一个产品子集团和该子集团的第一个元素)。此子集定义为 Count=3、Base element =All Tires、Start =0。

将起点从 0(与基本元素相同)改为 1,会将子集在层次结构中向下移动一个元素。现在显示在其中的是第一个子组和前两个单独 Product。

将起点更改为 2 则只显示前三个单独 Product。