Al modelar escenarios, se debe determinar si se realizan cálculos en cada sandbox.
Envíe los cambios de datos al sandbox y no realice más cálculos de datos de los necesarios. Basta con proporcionar los datos suficientes como para que los usuarios puedan validar su trabajo. De este modo, se mantiene la eficiencia de almacenamiento del diseño del sandbox.
Por ejemplo, si todos los miembros de nivel superior en un cubo son de cálculo dinámico, las agregaciones con formato de script de cálculo son innecesarias.
Si se han almacenado miembros de nivel superior, el ámbito de todo cálculo en el sandbox se debe limitar al mínimo imprescindible para que los usuarios puedan trabajar.
Las jerarquías dinámicas (tanto densas como ligeras) realizan agregaciones de manera automática, y los usuarios que hacen cambios en sandboxes pueden verlos de manera inmediata.
Observe un ejemplo de la aplicación de demostración del almacenamiento de bloques Sample_Scenario.Basic.
Imagine que Product y Market son jerarquías dinámicas con datos almacenados solo en el nivel cero, y que se crea un escenario utilizando el miembro sb0 de dimensión de sandbox.
Cuando acaba crear el sandbox, los valores de sb0 son los mismos que los de Base. Esto se debe a que los miembros de sandbox son virtuales y reflejan los valores base hasta que los usuarios realicen cambios en ellos.
Después de modificar los datos de Sales->Budget->Jan->Cola en el miembro sb0, observamos que, inmediatamente, el miembro de sandbox dinámico West (celda D10) se agrega al total correcto utilizando una combinación de los miembros almacenados de Base y sb0.
Los valores de Oregon, Utah y Nevada se almacenan en el miembro de sandbox Base. Los valores de California y Washington los envían participantes de escenario y se almacenan en el miembro de sandbox sb0. El total de West->Cola->sb0 se agrega dinámicamente utilizando estos valores almacenados.
También puede utilizar scripts de cálculo en sandboxes. Imagine que Oregon debe estar presupuestado como el 80% de California. Para ello, utilice el siguiente script de cálculo:
FIX("Jan", "Budget", "Cola", "Sales") "Oregon"="California"*.8; ENDFIX
Cuando un participante del escenario inicia una hoja de cálculo de Excel desde la interfaz web y ejecuta este cálculo, se calcula el miembro de sandbox sb0 por defecto y se actualiza el valor del miembro Oregon:
Esta vista no es la de una hoja iniciada por un escenario, sino más bien la de una vista privada de Smart View, en la que Base y sb0 pueden aparecer representados.
En algunos casos, una jerarquía dispersa o densa puede tener miembros de nivel superior almacenados, por lo que podría ser necesario realizar agregaciones en cálculos basados en el nivel o la generación.
Continuando con la última cuadrícula del ejemplo anterior, suponga ahora que los miembros de nivel superior de la dimensión de mercado están almacenados, en lugar de ser dinámicos.
Si se cambia el valor de Oregon a 250, será necesario volver a calcular el miembro West para ver los resultados correctos:
El siguiente script de cálculo se puede utilizar para agregar la dimensión de mercado en el sandbox, cuando se ejecuta desde una hoja de Excel iniciada en el escenario:
AGG("Market");