Cómo funciona el motor de fórmulas
Conceptos básicos
Fórmula es un conjunto de herramientas de programación y usuario para evaluar, editar y gestionar fórmulas. Una fórmula es una expresión a partir de la que se obtiene un resultado. Las fórmulas son la base de aplicaciones como las hojas de cálculo, pero su uso se puede extender a muchas otras.
La API fórmula permite evaluar dinámicamente fórmulas en tiempo de ejecución. Las fórmulas se escriben en una sintaxis muy similar a Java estándar. Su sintaxis admite expresiones matemáticas básicas e incorpora toda la potencia del lenguaje Java. En una fórmula puede usar cualquiera de las estructuras de control de flujo de Java (if, for, etc.), declarar variables locales, e instanciar y usar clases de bibliotecas externas.
La API permite definir un contexto de fórmula. El contexto es un conjunto de datos que acompañan la fórmula durante su ejecución. El uso más común del contexto es la definición de variables con sus respectivos valores. Al evaluar una fórmula, ésta podrá acceder al valor de las variables. El contexto se puede configurar dinámicamente para permitir que cada aplicación pueda definir su propio conjunto de variables.
El entorno fórmula dispone de una serie de funciones predefinidas de uso general. A través del contexto también puede añadir dinámicamente nuevas funciones que la fórmula podrá utilizar durante su ejecución. Con este mecanismo cada aplicación puede publicar su propia colección de funciones ajustable a sus necesidades concretas.
Algunos ejemplos sencillos de fórmulas:
- Fórmula muy básica: 2+3.
- Fórmula que multiplica por 2 la variable de contexto: @A * 2.
- Fórmula que usa una de las funciones predefinidas: WeekDay(@B).
- Fórmula que hace uso de instrucciones de control de flujo: if (@A == 1) { return 1; } else {return 2;}.
La biblioteca de fórmula dispone de un editor gráfico de fórmulas, que se puede se configurar totalmente por la aplicación.
El catálogo de fórmulas es otra herramienta de la biblioteca que le permite crear su propia colección de fórmulas de uso generalizado, que posteriormente podrá incorporar dentro de otras fórmulas. Puede acceder al catálogo de fórmulas seleccionando el punto Sistema / Herramientas de usuario, en el punto Catálogo de fórmulas.
Funciones básicas
Las fórmulas se escriben en una sintaxis similar a Java estándar. Las diferencias entre la sintaxis de una fórmula y la sintaxis de Java son las siguientes:
- Una fórmula no puede contener declaraciones de clases ni métodos.
- Puede contener declaraciones de variables locales, instrucciones de control de flujo y, en general, cualquier código Java válido, a excepción del caso del punto anterior.
- Result es una palabra clave reservada en sintaxis de una fórmula. Debe asignar el resultado de la fórmula a esta variable. Por ejemplo, result = 3;.
- Si la fórmula consta sólo de una línea, no es necesario asignar la variable result ni escribir el punto y coma final. Por ejemplo, 2 + 3 es equivalente a result = 2 + 3;. Puede utilizar indistintamente cualquiera de las dos fórmulas.
- La variable result es de tipo Object en Java, es decir, la fórmula puede devolver como resultado cualquier tipo de objeto, ya sea numérico o cualquier otro.
- Para hacer referencia a una variable de contexto, es necesario utilizar el carácter especial @ como prefijo a la variable. Por ejemplo, result = @A + @B; donde A y B son variables de contexto.
- Para modificar el contenido de las variables del contexto, se emplea la instrucción set seguida de la variable con @. Por ejemplo, set @A = 2.
- Se admiten sentencias del tipo import <package>; para enlazar con clases externas.
Temas relacionados
Cómo funciona el editor de fórmulas
Cómo funciona el catálogo de fórmulas
Cómo funciona la gestión documental
Cómo funciona la transferencia de archivos
Cómo funciona el asistente de envío masivo de correo electrónico
