Analizador de Expresiones
El producto proporciona soporte para definir expresiones que pueden ser matemáticas o lógicas/buleanas. Las expresiones pueden incluir variables y funciones.
El parámetro de columna del explorador de datos es un ejemplo de dónde se puede usar este analizador. Dicho parámetro soporta la definición de una fórmula. Las aplicaciones integrables pueden incluir soporte para una fórmula o expresión usando también este analizador. Por ejemplo, varias aplicaciones incluyen un tipo de objeto de "regla" (regla de cálculo, de formulario o de consumo) que se usa para la validación o el cálculo que puede soportar la aplicación de la fórmula.
En las siguientes tablas, se realza lo que se soporta en las expresiones que usan este analizador.
Categoría | Soportado en Expresión | Descripción |
---|---|---|
Tipos de datos | Número | |
Cadena | ||
Valores buleanos | ||
Lista | ||
Valores literales | Números | |
Cadenas entre comillas simples o dobles. Nota: Actualmente no se soporta el "escape" de caracteres especiales.
|
||
Valores buleanos: verdadero y falso. | ||
Operaciones | + | Suma |
— | Resta | |
/ | División | |
* | Multiplicación | |
^ o ** | Potencia | |
% | Módulo | |
Operaciones lógicas | = | Igual que |
> | Mayor que | |
>= | Mayor o igual que | |
< | Menor que | |
<= | Menor o igual que | |
!= o <> | No igual que |
En esta tabla, se identifican las funciones que se soportan. Tenga en cuenta que varias de las funciones se aplican a una lista de valores. Tenga en cuenta que, a pesar de que las funciones se enumeran en minúscula, la sintaxis de parámetro de columna en el explorador de datos indica la referencia a las funciones completamente en mayúsculas. El sistema pasa la fórmula de la columna del explorador de datos a minúsculas antes de que se haga la evaluación.
Función | Parámetro | Resultados | Comentarios |
---|---|---|---|
size( ) | Elemento de lista | Número de elementos de la lista. | |
isEmpty( ) | Elemento de lista | Devuelve "verdadero" si la lista está vacía. | |
sum( ) | Elemento de lista de tipo "número" | Devuelve la suma de los números de la lista. | |
avg( ) | Elemento de lista de tipo "número" | Devuelve el promedio de los números de la lista. | |
Uno o más número separados por comas | Devuelve el promedio de los argumentos numéricos. | ||
max( ) | Elemento de lista | Devuelve el mayor valor de la lista. | |
Uno o más elementos comparables. | Devuelve el mayor valor de los argumentos numéricos. | ||
min( ) | Elemento de lista | Devuelve el menor valor de la lista. | |
Uno o más elementos comparables. | Devuelve el menor valor de los argumentos numéricos. | ||
abs( ) | Número | Devuelve el valor absoluto. | |
ceiling( ) | Número | Redondea el número hacia arriba. | |
exp10( ) | Número | Eleva el número 10 a la potencia numérica. | |
acos( ) | Número | Devuelve el arcocoseno del número en radianes. | El resultado pierde precisión, ya que usa las funciones del sistema basadas en flotante doble. |
asin( ) | Número | Devuelve el arcoseno del número en radianes. | El resultado pierde precisión, ya que usa las funciones del sistema basadas en flotante doble. |
atan( ) | Número | Devuelve el arcotangente del número en radianes. | El resultado pierde precisión, ya que usa las funciones del sistema basadas en flotante doble. |
cos( ) | Radián | Devuelve el coseno de la entrada del ángulo en radianes. | El resultado pierde precisión, ya que usa las funciones del sistema basadas en flotante doble. |
exp( ) | Número | Eleva el número e a la potencia numérica. | El resultado pierde precisión, ya que usa las funciones del sistema basadas en flotante doble. |
log10( ) | Número | Calcula el logaritmo del número con base 10. | El resultado pierde precisión, ya que usa las funciones del sistema basadas en flotante doble. |
log( ) | Número | Calcula el logaritmo natural (base e) del número. | El resultado pierde precisión, ya que usa las funciones del sistema basadas en flotante doble. |
sin( ) | Radián | Devuelve el seno de la entrada del ángulo en radianes. | El resultado pierde precisión, ya que usa las funciones del sistema basadas en flotante doble. |
sqrt( ) | Número | Devuelve la raíz cuadrada del número. | El resultado pierde precisión, ya que usa las funciones del sistema basadas en flotante doble. |
tan( ) | Radián | Devuelve la tangente de la entrada del ángulo en radianes. | El resultado pierde precisión, ya que usa las funciones del sistema basadas en flotante doble. |
floor( ) | Número | Redondea el número hacia abajo. | |
round( ) | Número | Supone una escala de 0. Se aplica el modo de redondeo por defecto de "redondear la mitad hacia arriba". | |
Número, Escala | Se aplica el modo de redondeo por defecto de "redondear la mitad hacia arriba". | ||
Número, Escala, Modo | El modo debe establecerse en uno de los siguientes:
|
||
negate( ) | Número | Devuelve el valor negativo del número. | Disponible solo en el explorador de datos. |
A continuación se mencionan funciones especiales que la aplicación soporta para una lista de valores. En cada caso, la sintaxis es function [ indexVariable in listName | expression using indexVariable ], donde quien escribe la fórmula debe elegir el valor de indexVariable para representar cada registro en la lista, y las expresiones usadas para evaluar cada registro deben hacer referencia a dicha variable.
Función | Descripción | Ejemplos |
---|---|---|
any [ ] | Esta función devuelve el valor verdadero si cualquiera de los registros de la lista satisface la expresión. | La siguiente fórmula devuelve el valor verdadero si cualquiera de los registros de la lista Balance es mayor que 0.
|
all [ ] | Esta función devuelve el valor verdadero si todos los registros de la lista satisfacen la expresión. | La siguiente fórmula devuelve el valor verdadero si se completan todos los números de teléfono.
|
collect [ ] | Esta función devuelve una nueva lista de elementos de la lista de referencia donde el valor de cada registro de la nueva lista es el resultado de la expresión aplicada a cada valor original. | La siguiente fórmula devuelve una nueva lista con la tasa impositiva aplicada a cada importe.
|
select [ ] | Esta función devuelve una lista con todos los valores de la lista original que satisfacen la expresión buleana. | La siguiente fórmula devuelve una nueva lista que incluye solo los importes negativos.
|
reject [ ] | Esta función devuelve una lista con todos los valores de la lista original que no satisfacen la expresión buleana. | La siguiente fórmula devuelve una nueva lista que incluye solo los importes que no son negativos.
|