创建计算成员

可以组合使用多维数据集数据、算术运算符、数字和函数以创建自定义度量值或维度成员,这些度量值和维度成员称为计算成员。 例如,通过将换算比率和现有美元度量值相乘,可以创建将美元转换成欧元的计算成员 Euros。 然后,Euros 会在一个单独的行或列中显示给最终用户。

计算成员的定义将存储起来,而它们的值则只存在于内存中。 在上面的示例中,虽然马克的值会显示给最终用户,但这些值并没有存储为多维数据集数据。

您可以创建多维数据集中的计算成员。 若要创建计算成员,请在多维数据集设计器的 “计算” 选项卡中,单击工具栏中的 “新建计算成员” 图标。 该命令显示了一个窗体,可指定下列计算成员选项:

名称
选择计算成员的名称。 最终用户浏览多维数据集时,该名称显示为计算成员值的列或行标题。

父层次结构
选择用于包含计算成员的父层次结构。 层次结构是一些说明性的维度类别,通过这些类别,可以对多维数据集中的数字数据(即度量值)进行划分以便分析。 在表格格式浏览器中,当最终用户浏览多维数据集中的数据时,层次结构提供显示给最终用户的列标题和行标题。 (在图形浏览器中,它们提供其他类型的说明性标签,但功能与表格格式浏览器中的标签相同。)计算成员在选定的父维度中提供一个新标题(或标签)。

或者,可以让计算成员包含在度量值中,而不是包含在维度中。 该选项也提供一个新的列标题或行标题,但这个标题附加在浏览器的度量值中。

父成员
单击“更改”可以选择用于包含计算成员的父成员。 如果选择具有一个级别的层次结构或“MEASURES”作为父维度,则该选项不可用。

层次结构划分为包含成员的不同级别。 每个成员都生成一个标题。 浏览多维数据集中的数据时,最终用户可以从选定的标题深化至先前未显示的副标题。 计算成员的标题将添加到选定的父成员下的第一个级别中。

表达式
指定生成计算成员值的表达式。 该表达式可使用多维表达式 (MDX) 编写。 该表达式可以包含下列任何内容:

  • 表示多维数据集的维度、级别、度量值等组件的数据表达式

  • 算术运算符

  • 数字

  • 函数

您可以从 “计算工具” 窗格的 “元数据” 选项卡拖动或复制多维数据集组件以快速将其添加到表达式中。

重要

任何要在另一计算成员的值表达式中使用的计算成员都必须在创建将使用它的计算成员之前创建。

格式字符串
指定基于计算成员的单元值的格式。 此属性与度量值的 Display Format 属性接受相同的值。 有关显示格式的详细信息,请参阅 配置度量值属性

可见
确定在检索多维数据集元数据时计算成员是可见还是隐藏。 如果计算成员处于隐藏状态,则仍然可以在 MDX 表达式、语句和脚本中使用它,但在客户端用户界面中它不会显示为可选择的对象。

非空行为
存储用于解析 MDX 中非空查询的度量值名称。 如果此属性为空,则必须对计算成员进行重复计算,才能确定成员是否为空。 如果此属性包含一个或多个度量值的名称,并且所有指定的度量值均为空,则计算成员将被视为空。 此属性是对 Analysis Services 仅返回非空记录的优化提示。 只返回非空记录可提高使用 NON EMPTY 运算符或 NonEmpty 函数或者需要计算单元值的 MDX 查询的性能。 为使单元计算取得最佳性能,应尽可能只指定一个成员。

颜色表达式
指定基于计算成员的值动态设置单元前景色和背景色的 MDX 表达式。 如果客户端应用程序不支持此属性,将忽略此属性。

字体表达式
指定基于计算成员的值动态设置单元的字体、字号和字体属性的 MDX 表达式。 如果客户端应用程序不支持此属性,将忽略此属性。

您可以将多维数据集组件从 “计算工具” 窗格的 “元数据” 选项卡拖动或复制到“计算表达式”窗格的 “表达式” 框中。 您可以将函数从 “计算工具” 窗格的 “函数” 选项卡拖动或复制到“计算表达式”窗格的 “表达式” 框中。

寻址计算成员

“多维数据集设计器”“计算”选项卡中创建计算成员时,需要指定在其中存储计算成员的父层次结构。 父层次结构按以下规则确定如何为计算成员寻址:

  • 如果计算成员是在度量值维度中创建的,则计算成员在该维度中是可寻址的。

另请参阅

多维模型中的计算