使用计算命令

Essbase 计算命令可帮助您灵活地计算块存储多维数据集中的数据。您可以设计脚本来基于大纲计算数据,以迭代方式或并行方式计算数据,限制为子集,并声明变量。您可以从计算脚本中自定义不同功能的行为。

本节中的主题将讨论按功能分组的计算命令。

计算 Essbase 大纲

以下 Essbase 计算命令根据其大纲中的结构和公式计算块存储多维数据集。

表 23-1 计算多维数据集大纲的命令列表

命令 计算

全部计算

整个立方体,基于大纲

CALC DIM

指定的维或维

计算 TWOPASS

标记为帐户的维上标记为双遍的所有成员

注意:

请勿对混合模式多维数据集使用两遍计算。仅使用解决顺序

membername

公式应用于多维数据集大纲中的成员,其中 membername 是应用公式的成员的名称

CALC AVERAGE

标记为帐户的维上标记为“平均”的所有成员

CALC FIRST

标记为帐户的维上标记为“第一”的所有成员

CALC LAST

标记为帐户的维上标记为“最后”的所有成员

CCONV

货币换算

控制计算流

块存储 Essbase 计算脚本中的控制流命令可帮助您迭代计算、并行计算或将计算限制为多维数据集的子集。

以下命令可处理计算流:

表 23-2 控制计算流的命令列表

命令 计算

修复 ... 后缀

通过包含项计算数据库的子集

EXCLUDE...ENDEXCLUDE

通过排除计算数据库的子集

LOOP...ENDLOOP

指定迭代命令的次数

修复并行 ...ENDFIX 并行

对命令块启用并行计算

还可以使用 IFENDIF 命令指定条件计算。

注意:

Essbase 不允许从一个计算脚本分支到另一个计算脚本。

另请参见

控制流命令

在计算期间声明数据变量

Essbase 块存储计算脚本中使用数据声明命令来声明和设置临时变量的初始值,这些临时变量存储中间计算的结果。

也可以在计算脚本中使用替代变量。请参阅计算脚本中的替代变量

表 23-3 用于声明数据变量的命令列表

命令 计算

ARRAY

声明一维数组变量

VAR

声明一个包含单个值的临时变量

THREADVAR

声明可在 FIXPARALLEL...ENDFIXPARALLEL 块中使用的临时变量。

仅当运行计算脚本时,存储在临时变量中的值才存在。不能报告临时变量的值。

变量和数组名称是包含以下任一字符的字符串:

  • 字母 a-z

  • 数值 0-9

  • 特殊字符:$(美元符号)、#(磅符号)和 _(下划线)

通常,数组用于存储属于成员公式的变量。数组变量的大小由对应维中的成员数确定。例如,如果 Scenario 维有四个成员,以下命令会创建一个名为 Discount 的数组,其中包含四个条目:

ARRAY Discount[Scenario];

一次可以使用多个数组。

指定计算的全局设置

Essbase 计算脚本的 SET 命令有助于定义块存储计算的不同功能方面的行为。首次出现的 SET 命令将一直有效,直到下一次在脚本中出现相同的 SET 命令。

以下命令定义计算行为:

表 23-4 用于定义计算行为的命令列表

命令 计算

设置汇总

指定 Essbase 在计算期间如何处理 #MISSING 值

设置缓存

调整默认计算器高速缓存大小。请参阅 Essbase 高速缓存和计算性能

设置并行计算

启用并行计算。请参阅启用 CALCPARALLEL 并行计算

设置 CALCTASKDIMS

增加用于标识用于并行计算的任务的维数。请参阅确定并行计算的其他任务

SET CLEARUPDATESTATUS

控制 Essbase 如何为智能计算标记数据块。请参阅 The SET CLEARUPDATESTATUS Command

SET CREATEBLOCKONEQ

打开并关闭“创建方程式上的块”设置,该设置控制在向稀疏维成员分配非常量值时块的创建。请参阅分配给稀疏维中的成员的非常量值

设置 CREATENONMISSINGBLK

启用对潜在数据块的计算,并在结果不是 #MISSING 时保存这些块。

设置 FRMLBOTTOMUP

优化大型数据库大纲中稀疏维公式的计算。请参阅大纲中稀疏维的公式

设置消息

设置通知

SET TRACE

显示消息以监视和跟踪计算。

SET RUNTIMESUBVARS

声明计算脚本中使用的运行时替代变量。请参阅在 Essbase 中运行计算脚本中的运行时替代变量在 Smart View 中运行计算脚本中的运行时替代变量

设置更新计算

打开或禁用智能计算

在以下计算脚本中, Essbase 在计算“年”维时显示详细信息级别 (SET MSG DETAIL;) 的消息,并在计算“度量”维时在汇总级别 (SET MSG SUMMARY;) 显示消息:

SET MSG DETAIL;
CALC DIM(Year);

设置消息摘要;

CALC DIM(措施);

某些 SET 计算命令会触发通过数据库的其他传递。

在以下计算脚本中, Essbase 在启用了 SET AGGMISSG 的情况下计算 Qtr1 的成员组合,然后通过数据库进行第二次计算,并在关闭 SET AGGMISSG 的情况下计算 East 的成员组合:

SET AGGMISSG ON;
Qtr1;
SET AGGMISSG OFF;
East;

另请参见

SET 命令