Ejemplos de pruebas condicionales

Utilice pruebas condicionales en fórmulas de Essbase cuando necesite los cálculos para evaluar las dependencias de datos.

Por ejemplo, puede aplicar la siguiente fórmula a un miembro de la Comisión en el esquema del cubo para calcular la comisión en el 1% de las ventas si las ventas son superiores a 500000:

IF(Sales > 500000)
   Commission = Sales * .01;
ENDIF;

Si coloca la fórmula en un script de cálculo, debe asociar la fórmula con el miembro Comisión como se muestra a continuación:

Commission (IF(Sales > 500000)
   Commission = Sales * .01;
ENDIF;)

Essbase recorre el cubo realizando los siguientes cálculos:

  1. La sentencia IF comprueba si el valor de Sales para la combinación de miembros actual es mayor que 500000.

  2. Si Ventas es superior a 500000, Essbase multiplica el valor en Ventas por 0,01 y coloca el resultado en Comisión.

En el siguiente ejemplo, la fórmula prueba la ascendencia del miembro actual y, a continuación, aplica la fórmula de cálculo de nómina adecuada:

IF(@ISIDESC(East) OR @ISIDESC(West))
   Payroll = Sales * .15;
ELSEIF(@ISIDESC(Central))
   Payroll = Sales * .11;
ELSE
   Payroll = Sales * .10;
ENDIF;

Si coloca la fórmula en un script de cálculo, debe asociar la fórmula con el miembro Payroll como se muestra a continuación:

Payroll(IF(@ISIDESC(East) OR @ISIDESC(West))
   Payroll = Sales * .15;
ELSEIF(@ISIDESC(Central))
   Payroll = Sales * .11;
ELSE
   Payroll = Sales * .10;
ENDIF;)

Essbase recorre la base de datos realizando los siguientes cálculos:

  1. La sentencia IF utiliza la función @ISIDESC para comprobar si el miembro actual de la dimensión Market es descendiente de East u West.

  2. Si el miembro actual de la dimensión Market es un descendiente de East u West, Essbase multiplica el valor en Sales por 0,15 y pasa a la siguiente combinación de miembros.

  3. Si el miembro actual no es descendiente de Este u Oeste, la sentencia ELSEIF utiliza la función @ISIDESC para comprobar si el miembro actual es descendiente de Central.

  4. Si el miembro actual de la dimensión Mercado es descendiente de Central, Essbase multiplica el valor en Ventas por 0,11 y pasa a la siguiente combinación de miembros.

  5. Si el miembro actual no es descendiente de East, West o Central, Essbase multiplica el valor en Sales por 0,10 y pasa a la siguiente combinación de miembros.

Consulte también Conceptos de Cálculo Multidimensional.