使用计算命令
Essbase 计算命令可帮助您灵活地计算块存储多维数据集中的数据。您可以设计脚本来基于大纲计算数据,以迭代方式或并行方式计算数据,限制为子集,并声明变量。您可以从计算脚本中自定义不同功能的行为。
本节中的主题将讨论按功能分组的计算命令。
计算 Essbase 大纲
控制计算流
块存储 Essbase 计算脚本中的控制流命令可帮助您迭代计算、并行计算或将计算限制为多维数据集的子集。
以下命令可处理计算流:
表 23-2 控制计算流的命令列表
| 命令 | 计算 |
|---|---|
|
通过包含项计算数据库的子集 |
|
|
通过排除计算数据库的子集 |
|
|
指定迭代命令的次数 |
|
|
对命令块启用并行计算 |
注意:
Essbase 不允许从一个计算脚本分支到另一个计算脚本。
另请参见
在计算期间声明数据变量
在 Essbase 块存储计算脚本中使用数据声明命令来声明和设置临时变量的初始值,这些临时变量存储中间计算的结果。
也可以在计算脚本中使用替代变量。请参阅计算脚本中的替代变量。
表 23-3 用于声明数据变量的命令列表
| 命令 | 计算 |
|---|---|
|
声明一维数组变量 |
|
|
声明一个包含单个值的临时变量 |
|
|
声明可在 FIXPARALLEL...ENDFIXPARALLEL 块中使用的临时变量。 |
仅当运行计算脚本时,存储在临时变量中的值才存在。不能报告临时变量的值。
变量和数组名称是包含以下任一字符的字符串:
-
字母 a-z
-
数值 0-9
-
特殊字符:$(美元符号)、#(磅符号)和 _(下划线)
通常,数组用于存储属于成员公式的变量。数组变量的大小由对应维中的成员数确定。例如,如果 Scenario 维有四个成员,以下命令会创建一个名为 Discount 的数组,其中包含四个条目:
ARRAY Discount[Scenario];一次可以使用多个数组。
指定计算的全局设置
Essbase 计算脚本的 SET 命令有助于定义块存储计算的不同功能方面的行为。首次出现的 SET 命令将一直有效,直到下一次在脚本中出现相同的 SET 命令。
以下命令定义计算行为:
表 23-4 用于定义计算行为的命令列表
| 命令 | 计算 |
|---|---|
|
指定 Essbase 在计算期间如何处理 #MISSING 值。 |
|
|
调整默认计算器高速缓存大小。请参阅 Essbase 高速缓存和计算性能。 |
|
|
启用并行计算。请参阅启用 CALCPARALLEL 并行计算。 |
|
|
增加用于标识用于并行计算的任务的维数。请参阅确定并行计算的其他任务。 |
|
|
控制 Essbase 如何为智能计算标记数据块。请参阅 The SET CLEARUPDATESTATUS Command 。 |
|
|
打开并关闭“创建方程式上的块”设置,该设置控制在向稀疏维成员分配非常量值时块的创建。请参阅分配给稀疏维中的成员的非常量值。 |
|
|
启用对潜在数据块的计算,并在结果不是 #MISSING 时保存这些块。 |
|
|
优化大型数据库大纲中稀疏维公式的计算。请参阅大纲中稀疏维的公式。 |
|
|
显示消息以监视和跟踪计算。 |
|
|
声明计算脚本中使用的运行时替代变量。请参阅在 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;另请参见