Analizador de expresiones
El producto soporta la definición de expresiones que pueden ser de origen matemático o lógico/booleano. La expresión puede incluir variables y funciones.
El parámetro de columna del explorador de datos es un ejemplo de dónde se puede usar. Ese parámetro soporta la definición de una fórmula. Las aplicaciones integrables pueden soportar una fórmula o expresión que use también este analizador. Por ejemplo, varias aplicaciones incluyen un tipo de objeto de "regla" (regla de cálculo, regla de formulario o regla de consumo) que se usa para validación o cálculo que puede soportar la aplicación de una fórmula.
En las tablas siguientes se resalta lo que se soporta en las expresiones que usan este analizador.
Categoría | Soportado en la expresión | Descripción |
---|---|---|
Tipos de datos | Número | |
Cadena | ||
Booleano | ||
Lista | ||
Literales | Números | |
Cadenas entre comillas simples o dobles. Nota: actualmente no se soportan los caracteres especiales de "escape".
|
||
Valores booleanos: verdadero y falso. | ||
Operaciones | + | Más |
— | Menos | |
/ | División | |
* | Multiplicación | |
^ o ** | Potencia | |
% | Módulo | |
Operaciones lógicas | = | Igual a |
> | Mayor que | |
>= | Mayor que o igual a | |
< | Menor que | |
<= | Menor que o igual a | |
!= o <> | Distinto de |
En esta tabla se identifican las funciones que se soportan. Tenga en cuenta que se pueden aplicar varias de las funciones a una lista de valores. Tenga en cuenta que aunque las funciones se indiquen en minúsculas, la sintaxis del parámetro de columna en el explorador de datos indica la referencia a las funciones en letras mayúsculas. El sistema convierte la fórmula de la columna del explorador de datos a minúsculas antes de evaluarla.
Función | Parámetro | Resultados | Comentarios |
---|---|---|---|
size( ) | Elemento de lista | Número de elementos en la lista. | |
isEmpty( ) | Elemento de lista | Devuelve "verdadero" si la lista está vacía. | |
sum( ) | Elemento de lista del tipo 'número' | Devuelve la suma de los números de la lista. | |
avg( ) | Elemento de lista del tipo 'número' | Devuelve la media de los números de la lista. | |
Uno o varios números separados por comas | Devuelve la media de los argumentos de número. | ||
max( ) | Elemento de lista | Devuelve el valor mayor de la lista. | |
Uno o varios elementos comparables. | Devuelve el valor mayor de los argumentos de número. | ||
min( ) | Elemento de lista | Devuelve el valor menor de la lista. | |
Uno o varios elementos comparables. | Devuelve el valor menor de los argumentos de número. | ||
abs( ) | Número | Devuelve el valor absoluto. | |
ceiling( ) | Número | Redondea el número hacia arriba. | |
exp10( ) | Número | Eleva 10 a la potencia de número. | |
acos( ) | Número | Devuelve el arcocoseno del número en radianes. | El resultado perderá precisión porque usa las funciones basadas la 'doble precisión' (flotante) del sistema. |
asin( ) | Número | Devuelve el arcoseno del número en radianes. | El resultado perderá precisión porque usa las funciones basadas la 'doble precisión' (flotante) del sistema. |
atan( ) | Número | Devuelve el arcotangente del número en radianes. | El resultado perderá precisión porque usa las funciones basadas la 'doble precisión' (flotante) del sistema. |
cos( ) | Radián | Devuelve el coseno de la entrada de ángulo en radianes. | El resultado perderá precisión porque usa las funciones basadas la 'doble precisión' (flotante) del sistema. |
exp( ) | Número | Eleva e a la potencia de número. | El resultado perderá precisión porque usa las funciones basadas la 'doble precisión' (flotante) del sistema. |
log10( ) | Número | Toma el log, base 10, del número. | El resultado perderá precisión porque usa las funciones basadas la 'doble precisión' (flotante) del sistema. |
log( ) | Número | Toma el log natural (base e) del número. | El resultado perderá precisión porque usa las funciones basadas la 'doble precisión' (flotante) del sistema. |
sin( ) | Radián | Devuelve el seno de la entrada de ángulo en radianes. | El resultado perderá precisión porque usa las funciones basadas la 'doble precisión' (flotante) del sistema. |
sqrt( ) | Número | Devuelve la raíz cuadrada del número. | El resultado perderá precisión porque usa las funciones basadas la 'doble precisión' (flotante) del sistema. |
tan( ) | Radián | Devuelve la tangente de la entrada de ángulo en radianes. | El resultado perderá precisión porque usa las funciones basadas la 'doble precisión' (flotante) del sistema. |
floor( ) | Número | Redondea el número hacia abajo. | |
round( ) | Número | Asume una escala de 0. Se aplica el modo de redondeo por defecto de “redondear de mitad hacia arriba”. | |
Número, escala | Se aplica el modo de redondeo por defecto de “redondear de mitad hacia arriba”. | ||
Número, escala, modo | El modo se debe definir en uno de los siguientes:
|
||
negate( ) | Número | Devuelve el valor negativo del número. | Solo está disponible en el explorador de datos. |
Las funciones especiales siguientes se soportan en la aplicación para una lista de valores. En cada caso, la sintaxis es function [ indexVariable en listName | expression using indexVariable ], donde el autor de la fórmula elige la indexVariable para representar cada entrada de la lista y la expresión usada para evaluar cada entrada debe hacer referencia a esa variable.
Función | Descripción | Ejemplos |
---|---|---|
any [ ] | Esta función devuelve el valor verdadero si alguna de las entradas de la lista cumple con la expresión. | Lo siguiente devuelve verdadero si cualquier entrada en la lista de saldos es mayor que 0.
|
all [ ] | Esta función devuelve el valor verdadero si todas las entradas de la lista cumplen con la expresión. | Lo siguiente devuelve verdadero si se rellenan todos los números de teléfono.
|
collect [ ] | Esta función devuelve una lista nueva de elementos desde la lista a la que se hace referencia donde el valor de cada entrada de la lista nueva es el resultado de la expresión aplicada a cada valor original. | Lo siguiente devuelve una lista nueva con el tipo impositivo aplicado a cada importe.
|
select [ ] | Esta función devuelve una lista de todos los valores de la lista original que cumplen con la expresión booleana. | Lo siguiente devuelve una lista nuevo solo con los importes que sean números negativos.
|
reject [ ] | Esta función devuelve una lista de todos los valores de la lista original que no cumplen con la expresión booleana. | Lo siguiente devuelve una lista nuevo solo con los importes que no sean números negativos.
|