Asignar costos entre productos
Este ejemplo de script de cálculo de almacenamiento de bloques de Essbase asigna los costos generales a cada producto de cada mercado para cada mes. Utiliza ARRAY, FIX y CALC DIM. No agrega valores #Missing.
Los costos generales se asignan en función del valor de ventas de cada producto como porcentaje del total de ventas de todos los productos.
Supongamos que ha agregado dos miembros a la dimensión Measures:
-
OH_Costes para los costos generales asignados
-
OH_TotalCost para los costos generales totales
Script de ejemplo:
/* 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 realiza estos cálculos:
-
Crea una matriz unidimensional denominada ALLOCQ para almacenar el valor de Sales como un porcentaje del total de Sales temporalmente para cada combinación de miembros.
El tamaño de ALLOCQ se basa en el número de miembros de la dimensión Year.
-
Los valores #MISSING no se agregan a sus principales (SET AGGMISSG está establecido en OFF). Los valores de datos almacenados en los niveles principales no se sobrescriben.
Si SET AGGMISSG OFF es el valor predeterminado del sistema, omita esta línea. Consulte #MISSING Values.
-
Correcciones en los valores Reales.
-
Sincroniza las combinaciones de miembros para Actual y calcula OH_Costs.
-
Toma el valor de Ventas de cada producto en cada mercado para cada mes y lo calcula como un porcentaje del total de Ventas de todos los productos en cada mercado (Ventas -> Producto). El resultado se coloca en ALLOCQ.
-
Toma los costos generales totales para todos los productos (OH_TotalCost -> Product) y los multiplica por el valor que acaba de colocar en ALLOCQ. El resultado se coloca en OH_Costs.
Tenga en cuenta que ambas ecuaciones están entre paréntesis ( ) y asociadas con el miembro OH_Costs: OH_Costs (ecuación1; ecuación2;).
-
-
Calcula y consolida la dimensión Measures.