Panel de operadores de cálculo de Essbase

Estoy seguro de que la mayoría de los lectores de este blog conocen muy bien lo potente que es realmente Oracle Essbase, pero con tantas capacidades, muchas funciones y comandos suelen pasar desapercibidos incluso para los administradores o analistas de Essbase más experimentados. Bien, es momento de comenzar revisando sus operadores de cálculo. Los operadores de cálculo son la base del trabajo con fórmulas de Essbase, y saber de qué son capaces solo mejorará su comprensión del sistema y de las posibles soluciones a implementar.

Solo como un breve repaso, los operadores de cálculo de Essbase, ya sean matemáticos, condicionales y lógicos, o multidimensionales, definen ecuaciones para las fórmulas de miembros de Essbase y los scripts de cálculo. En realidad no hay tantos que recordar, pero sus usos son casi infinitos.

Empezando con los operadores matemáticos, lo básico:

  • + : ¿adivina qué? Suma cosas…
  • – : ¡sorpresa! Resta.
  • * : por supuesto, multiplica.
  • / : intuitivamente, divide.
  • % : poniéndose un poco más interesante, evalúa porcentajes (member1%member2 evalúa member1 como un porcentaje de member2).
  • () : Por último, controla el orden de los cálculos y anida ecuaciones y fórmulas.

Pasando ahora a lo divertido, operadores condicionales y lógicos:

IF | ELSE | ELSEIF |ENDIF: Prueban condiciones y calculan una fórmula según el éxito o el fracaso de la prueba.

  • (>) : El valor de datos es mayor que.
  • (>=) : El valor de datos es mayor o igual que.
  • (<) : El valor de datos es menor que.
  • (<=) : El valor de datos es menor o igual que.
  • (= =) : El valor de datos es igual a (¡observe los dos signos igual!).
  • () o != : El valor de datos no es igual a.

AND: Operador lógico de enlace AND para pruebas de valores múltiples. El resultado es TRUE si ambas condiciones son TRUE. De lo contrario, el resultado es FALSE.*

OR: Operador lógico de enlace OR para pruebas de valores múltiples. El resultado es TRUE si cualquiera de las condiciones es TRUE. De lo contrario, el resultado es FALSE.*

NOT : Operador lógico NOT. El resultado es TRUE si la condición es FALSE. El resultado es FALSE si la condición es TRUE.*

*¡Recuerde! Las constantes lógicas TRUE y FALSE se interpretan como 1 (TRUE) y 0 (FALSE) cuando corresponde.

Bien… así que ahora mismo la mayoría de ustedes se preguntan por qué les estoy explicando señalización matemática básica e inglés, pero bueno, ¡todos tienen que empezar desde el punto 0!

Por último, los operadores multidimensionales, bastante simples:

Cada vez que vea o escriba un ( -> ), sepa que apunta a valores de datos de combinaciones específicas de miembros. Básicamente, si tiene un ( – ) y un ( > ) juntos sin un espacio entre ellos, está indicando la conexión entre dimensiones para una intersección.

Aquí tiene un ejemplo:

ELSEIF(@ISUDA(“Entity”,”AUD_Rev”))

“USD” = “Local_Currency”/”Fx_Rate_AUD”->”Local_Currency”->”No_Entity”->”No_Business_area”->

“No_Crop”->”No_Customer”->”No_Legal_Entity”->”Input”;

Ahora bien, este es un ejemplo común en el que una tasa de cambio de moneda se almacena en una intersección determinada, y esa intersección se referencia para un cálculo de conversión de moneda.

Eso es todo sobre los conceptos básicos por ahora, amigos, ¡asegúrense de seguir atentos mientras entramos en un poco más de detalle!