配置度量值属性
通过度量值的属性,您可以定义度量值的工作方式,并控制如何向用户显示度量值。
度量值属性
度量值从其所属的度量值组中继承某些属性,除非这些属性在度量值级别被覆盖。度量值属性确定度量值的聚合方式、它的数据类型、对用户的显示名称、度量值将在其中出现的显示文件夹、它的格式字符串、任何度量值表达式、基础源列和它对用户的可见性。
属性 | 定义 |
---|---|
AggregateFunction |
确定度量值的聚合方式。有关详细信息,请参阅聚合函数。 |
DataType |
指定与度量值绑定的基础事实数据表中的列的数据类型。 |
Description |
提供度量值的说明,可以在客户端应用程序中显示该说明。 |
DisplayFolder |
指定当用户连接到多维数据集时度量值将在其中显示的文件夹。多维数据集有很多度量值时,可以使用显示文件夹来对度量值进行分类,从而改善用户的浏览体验。 |
FormatString |
确定显示格式。详细信息,请参阅显示格式。 |
ID |
显示度量值的唯一标识符 (ID)。该属性为只读。 |
MeasureExpression |
指定定义度量值的多维表达式 (MDX)。 |
Name |
指定度量值的名称。 |
Source |
指定与度量值绑定的数据源视图中的列。 |
Visible |
确定度量值的可见性。 |
聚合函数
Microsoft SQL Server 2005 Analysis Services (SSAS) 提供了几种函数,用来按照维度聚合度量值组中包含的度量值。默认情况下,度量值按每个维度进行求和。但是,通过 AggregateFunction 属性,您可以修改此行为。聚合函数的累加性可确定度量值如何在多维数据集的所有维度中进行聚合。聚合函数具有三个级别的累加性:
- 累加性
累加性度量值也称为完全累加性度量值,可针对包含度量值的度量值组中包括的所有维度进行聚合,没有任何限制。
- 半累加性
半累加性度量值可针对包含度量值的度量值组中包括的某些(但不是全部)维度进行聚合。例如,表示可供库存数量的度量值可针对地域维度进行聚合,以生成可用于所有仓库的总计数量,但该度量值不能针对时间维度进行聚合,因为该度量值表示可用数量的定期快照。针对时间维度聚合此类度量值将产生不正确的结果。
- 非累加性
非累加性度量值不能针对包含度量值的度量值组中的任何维度进行聚合。相反,必须对表示度量值的多维数据集中的每个单元分别计算度量值。例如,返回百分比的计算度量值(例如利润率)不能由任何维度内子成员的百分比值进行聚合。
下表列出了 Analysis Services 中的聚合函数,并对函数的累加性和预期输出进行了说明。
聚合函数 | 累加性 | 返回值 |
---|---|---|
Sum |
累加性 |
对所有子成员的值求和。这是默认的聚合函数。 |
Count |
累加性 |
检索所有子成员的计数。 |
Min |
半累加性 |
检索所有子成员的最低值。 |
Max |
半累加性 |
检索所有子成员的最高值。 |
DistinctCount |
非累加性 |
检索所有唯一子成员的计数。 |
None |
非累加性 |
不执行任何聚合,直接从事实数据表中为包含度量值的度量值组提供维度中叶成员和非叶成员的所有值。如果从事实数据表中无法为成员读取任何值,则该成员的值设置为空。 |
ByAccount |
半累加性 |
根据为帐户维度中某一成员的帐户类型指定的聚合函数计算聚合。如果度量值组中不存在任何帐户类型维度,则视为 None 聚合函数。 有关帐户维度的详细信息,请参阅帐户 (SSAS)。 |
AverageOfChildren |
半累加性 |
计算所有非空子成员的平均值。 |
FirstChild |
半累加性 |
检索第一个子成员的值。 |
LastChild |
半累加性 |
检索最后一个子成员的值。 |
FirstNonEmpty |
半累加性 |
检索第一个非空子成员的值。 |
LastNonEmpty |
半累加性 |
检索最后一个非空子成员的值。 |
显示格式
通过使用度量值的 FormatString 属性,可以选择用于向用户显示度量值的格式。
尽管提供了显示格式的列表,但您仍可以指定该列表中不存在的许多其他格式。您可以指定在 Microsoft Visual Basic 中有效的任何命名格式或用户定义格式。下表包含可用的命名格式和用户定义格式的一些示例。该表假定,客户机的控制面板中的区域设置为“英语(美国)”。
源数据类型 | 格式 | 显示格式值 | 示例输出 |
---|---|---|---|
Numeric |
已命名 |
通用数值 |
123456789 |
|
|
|
0 |
|
|
固定 |
123456789.00 |
|
|
|
0.00 |
|
用户定义 |
$#,#.00 |
$123,456,789.00 |
|
|
|
$0.00 |
|
|
#,#0.0000 |
123,456,789.0000 |
|
|
|
0.0000 |
Date/time |
已命名 |
中长日期 |
31-Dec-99 |
|
|
长日期 |
Friday, December 31, 1999 |
|
用户定义 |
mm/dd/yyyy |
12/31/1999 |
|
|
mmm-dd-yyyy |
Dec-31-1999 |
Boolean |
已命名 |
Yes/No |
Yes |
|
|
True/False |
True |
有关有效的预定义格式和用户定义格式的详细信息,请在 MSDN Library 的“开发工具和语言”部分中搜索“format 函数”。