Operadores y Funciones para definir Cálculos
O3 Portal ofrece un editor de expresiones para facilitar la tarea de definición de cálculos.
La siguiente tabla contiene operadores y funciones que puede usar cuando ingresa expresiones en las columnas o filas calculadas.
Operadores
Operadores Numéricos | |
---|---|
+ , - , / , *, %, - unary, + unary | Operadores numéricos simples |
Operadores Comparativos | |
== , != , < , > , >= , <= | Use estos con los tipos Integer, Double, Date, Time y String. |
Operadores Lógicos | |
&&,||,! | Corresponden a los operadores lógicos: AND, OR, NOT |
Otros Operadores | |
? :, ; , = | Evaluación Condicional (IF). |
CASE, CASE_WHEN, CASE_ELSE | Evaluación Condicional (CASE) |
Constantes | |
"", true, false, Pi, e |
Funciones para Grilla
@Cant_([Desde, Hasta,] Expr) |
|
@Max_([Desde, Hasta,] Expr) |
|
@Min_([Desde, Hasta,] Expr) |
|
@Prod_([Desde, Hasta,] Expr) |
|
@Prom_([Desde, Hasta,] Expr) |
|
@Sum_([Desde, Hasta,] Expr) |
|
Clave(Dirección, Dimensión) | Retorna la clave interna de un elemento referenciado por una Dirección y perteneciente a una Dimensión. |
Descripción(Dirección, Dimensión) | Retorna la descripción del elemento referenciado por una Dirección y perteneciente a una Dimensión. |
Etiqueta(Dirección, Dimensión) | Retorna la etiqueta del elemento referenciado por una Dirección y perteneciente a una Dimensión. |
EtiquetaLarga(Dirección, Dimensión) | Retorna la etiqueta larga del elemento referenciado por una Dirección y perteneciente a una Dimensión. |
Valor(Indice) | Retorna el valor correspondiente a la posición indicada por un Indice en un rango. |
ValorC(Constante) | Retorna el valor actual de una Constante. |
Funciones para manipulación de cadenas de caracteres (Strings)
Caracter(Integer) | Retorna el carácter especificado por el código numérico del set de caracteres de la máquina. |
Codigo(String) | Retorna el código numérico para un carácter en el set de caracteres de la máquina. El Texto debe ser de largo 1. |
Comienza(String, String) | Retorna Verdadero si el Texto1 comienza con Texto2 y Falso en caso contrario. |
Concatenar (String, String, String, ...) : String | Concatena el segundo String a continuación del primero. |
Derecha(String, Integer) | Retorna una cadena de texto con los últimos N caracteres (o más la derecha) de la cadena Texto, siendo N el Número especificado. |
Espacios(String) | Elimina los espacios en blanco del comienzo y el final de un texto. |
Extraer(String, Integer, Integer ) : String | Extrae de Texto1, la subcadena que comienza en el caracter Desde y llega hasta el caracter anterior a Hasta. Los caracteres se numeran desde 0. |
Izquierda(String, Integer) | Retorna una cadena de texto con los primeros N caracteres (o más a la izquierda) de Texto, siendo N el Número especificado. |
Largo (String) : Integer | Retorna la cantidad de caracteres de la cadena Texto. |
Mayusc(String) | Cambia todas las letras de Texto por mayúsculas. |
Minusc(String) | Cambia todas las letras de Texto por minúsculas |
Termina(String, String) : Booleano | Retorna TRUE si Texto1 termina con el Texto2 y FALSE en caso contrario. |
Texto (Integer | Double | Date | Time | String | Boolean):String | Convierte el argumento en String. Los formatos para Fecha y Hora se especifican después. Los valores Booleanos deben ser verdadero o falso. |
ValorBooleano (String) : Boolean | Convierte Texto a un valor boolean. El texto debe ser "TRUE" o "FALSE". |
ValorEntero(String) : Integer | Convierte Texto a número. El texto debe tener formato de número. Ej. "123" |
ValorNumero (String) : Double | Convierte Texto a un número (Double). El Texto debe tener formato de número. Ej: "123,10". |
Funciones para manipulación de Fechas y Tiempo
La representación del tipo Fecha como String es: dd/mm/yyyy o dd/mm/yy.
Año (Fecha) : Integer | Extrae el año de la fecha. |
Dia (Fecha) : Integer | Extrae el número de día de la fecha. |
DiaDeSemana(Fecha) : Integer | Retorna el día de la semana de una fecha |
DifAños (Fecha, Fecha) : Integer | El número de años entre ambas fechas. |
DifDias(Fecha, Fecha) : Integer | El número de días entre ambas fechas. |
DifMeses (Fecha, Fecha) : Integer | El número de meses entre ambas fechas. |
Fecha (Integer, Integer , Integer ) : Fecha | Crea una nueva fecha de día, mes y año. |
Hoy () : Fecha | Recupera la fecha del momento en que se ejecuta. |
Mes (Fecha) :Integer | Extrae el número de mes de la fecha. |
NombreDia(Fecha) : String | Retorna el nombre del día de la semana de una Fecha |
NombreMes (Fecha) : String | Extrae el nombre del mes de la fecha. |
NombreSemestre (Fecha) : String | Extrae el nombre de semestre de la fecha. |
NombreTrimestre (Fecha) : String | Extrae el nombre de trimestre de la fecha. |
SemanaDelAño (Fecha) : Integer | Extrae el número de semana del año de la fecha. |
SemanaDelMes (Fecha) : Integer | Extrae el número de semana del mes de la fecha. |
Semestre (Fecha) : Integer | Extrae el número de semestre de la fecha. |
SumarAño (Fecha, Integer) : Fecha | Agrega el número especificado de años a la fecha dada. |
SumarDia (Fecha, Integer) : Fecha | Agrega el número especificado de días a la fecha dada. |
SumarMes (Fecha, Integer) : Fecha | Agrega el número especificado de meses a la fecha dada. |
Trimestre (Fecha) : Integer | Extrae el número de trimestre de la fecha. |
ValorFecha(String) : Fecha | Convierte un String en Date. El String puede soportar cualquiera de los dos formatos. |
La representación del tipo Tiempo como String es: hh:mm:ss (Nota: no hay soporte para hh:mm) El tipo Time es para uso interno en las expresiones como resultados intermedios. No es posible tener Campos Virtuales de tipo Tiempo, por lo tanto el resultado final de una expresión que define un Campo Virtual debe ser de otro tipo.
Ahora () : Tiempo | Recupera la hora del momento en que se ejecuta. |
Horas(Tiempo) : Integer | Extrae el número de horas de la hora. |
Minutos (Tiempo) : Integer | Extrae el número de minutos de la hora. |
Segundos (Time) : Integer | Extrae el número de segundos de la hora. |
Tiempo (Integer , Integer , Integer) : Tiempo | Crea una nueva hora desde horas, minutos y segundos. |
ValorTiempo (String) : Tiempo | Convierte un String en Time. |
Funciones Matemáticas
Abs(Integer) | Retorna el valor absoluto de un Número. |
Aleatorio() : Double | Retorna un numero aleatorio entre 0 y 1 |
Entero(Integer) : Integer | Trunca el numero a entero |
Exp(Integer) : Double | Retorna la constante elevada a un número |
Log(Integer) : Double | Retorna el logaritmo hiperbólico de un número |
Maximo(Integer, Integer, ...) | Retorna el máximo de un conjunto de números. |
Minimo(Integer, Integer, ...) | Retorna el mínimo de un conjunto de números. |
Potencia(Integer, Potencia) | Retorna el resultado de un Número elevado a una Potencia. |
Promedio (Integer, Integer, ....) : Double | Calcula el promedio de los números dados. |
Raiz (Double) : Double | Calcula la raíz cuadrada de los números dados. |
Redondear(Integer, Dígitos) | Redondea un Número a la cantidad de Dígitos especificada. Si Dígitos es negativo el Número es redondeado a la izquierda de la coma decimal. |
Signo(Integer) | Retorna el signo de un Número: 1 si el número es positivo, 0 si el número es cero y --1 si el número es negativo. |
Truncar(Integer,Dígitos) | Trunca un Número a la cantidad de Dígitos especificada. Si Dígitos es negativo el Número es redondeado a la izquierda de la coma decimal. |
Funciones para Estadísticas Básicas
Cant(Dirección) | Retorna la cantidad de valores en el rango definido por una Dirección. |
Max(Dirección) | Retorna el máximo de los valores en el rango definido por una Dirección. |
Min(Dirección) | Retorna el mínimo de los valores en el rango definido por una Dirección. |
Prod(Dirección) | Retorna el producto de los valores en el rango definido por una Dirección. |
Prom(Dirección) | Retorna el promedio de los valores en el rango definido por una Dirección. |
Sum(Dirección) | Retorna la suma de los valores en el rango definido por una Dirección. |
Funciones Estadísticas
El editor de expresiones en el contexto de definición de campos virtuales ofrece un conjunto de funciones estadísticas:
Corr(Dirección, Dirección):Double | Calcula el coeficiente de correlación de una muestra |
Covar(Dirección, Dirección):Double | Calcula la covarianza de una muestra |
CovarP(Dirección, Dirección):Double | Calcula la covarianza de la población |
DesvEst(Dirección):Double | Calcula la desviación estándar de una muestra |
DesvEstP(Dirección):Double | Calcula la desviación estándar de la población |
InvNormal(Doble):Double | Distribución normal inversa |
MediaCuad(Dirección):Double | Calcula la media cuadrática |
Normal(Doble):Double | Función de distribución de probabilidad N(0,1) |
Var(Dirección):Double | Calcula la varianza de una muestra |
VarP(Dirección):Double | Calcula la varianza de la población |
Por mas información sobre funciones estadísticas, consulte: Tutorial Nuevas Funciones Estadísticas
Otras
Elegir (Indice, Opcion1, ...,OpcionN) : Value | Retorna como resultado (Value) el valor Option que corresponde al valor del primer parámetro de la función (Indice). Para 1 se retorna el primer valor (Opcion1), el segundo para 2 (Opcion2) etc. Si el valor es más alto que el número de opciones retorna nulo. Es posible usar el identificador TN (Número de Tuplo) como primer parámetro y los nombres de campos como opciones para generar más de un registro de entrada de fuente. |
EsNulo (NombreCampo) : Boolean | Retorna verdadero cuando el campo es nulo, de lo contrario retorna falso. |