跨产品分配成本
此 Essbase 块存储计算脚本示例每月为每个市场中的每个产品分配间接费用成本。它使用 ARRAY、FIX 和 CALC DIM。它不聚集 #Missing 值。
间接费用成本根据每种产品的销售价值占所有产品的销售总额的百分比进行分配。
假定您向“度量”维添加了两个成员:
-
分配的间接费用成本的 OH_Costs
-
OH_TotalCost - 总间接费用成本
示例脚本:
/* Declare a temporary array called ALLOCQ based on the Year dimension */
ARRAY ALLOCQ[Year];
/* Turn the Aggregate Missing Values setting off. If this is your system default, omit this line */
SET AGGMISSG OFF;
/* Allocate the overhead costs for Actual values */
FIX(Actual)
OH_Costs (ALLOCQ=Sales/Sales->Product; OH_Costs =
OH_TotalCost->Product * ALLOCQ;);
/* Calculate and consolidate the Measures dimension */
CALC DIM(Measures);
ENDFIXEssbase 执行以下计算:
-
创建一个名为 ALLOCQ 的一维数组,用于临时存储每个成员组合的 Sales 值占总销售额的百分比。
ALLOCQ 的大小基于 Year 维中的成员数。
-
#MISSING 值不聚合到其父项( SET AGGMISSG 设置为 OFF)。不会覆盖在父级别存储的数据值。
如果 SET AGGMISSG OFF 是系统默认值,则忽略此行。请参见 #MISSING Values 。
-
修复实际值。
-
循环处理“实际”的成员组合,并计算 OH_Costs。
-
将每个市场中每个产品的每月销售价值计算为每个市场中所有产品的销售总额的百分比(销售 -> 产品)。结果将放置在 ALLOCQ 中。
-
承担所有产品 (OH_TotalCost -> Product) 的总间接费用成本,并将其乘以刚刚放置在 ALLOCQ 中的值。结果置于 OH_Costs 中。
请注意,这两个方程式都用括号 ( ) 括起来,并与 OH_Costs 成员关联:OH_Costs(方程式 1;方程式 2;)。
-
-
计算并合并“度量”维。