Saltar al contenido

When writing expressions in Vinyl (particularly when creating Rules), there are various functions that can be used to join, calculate, and otherwise manipulate the data within the expression. The following is a list of functions currently available in Vinyl.

Note

When writing expressions in Vinyl, any string must be placed within single quotes (' ') to be  parsed as text and not a column name or function call. Numbers that are going to be calculated do not require quotes. 

Funciones de Base de Datos

Funciones de base de datos son funciones que se traducen a una función nativa de SQL y, por lo tanto, son evaluadas por el motor de la base de datos. Las funciones de la base de datos tienen acceso a la información de la capa de datos de Vinyl, incluidas tablas, columnas y otras funciones de la base de datos.

En Vinyl, las funciones de la base de datos se configuran principalmente en la capa de lógica de negocios, específicamente en el campo Columna o Expresión al crear la lógica para una regla de negocios en Vinyl.

  • Abdominales: Devuelve el valor absoluto de un número.
  • Promedio: Devuelve el promedio (media matemática) de los valores de un grupo. Ignora los valores nulos.
  • Elenco: Convierte una expresión a otro tipo de datos.
  • Carácter: Convierte un código int ASCII en un valor de carácter.
  • Concat: Devuelve una cadena que es el resultado de concatenar dos o más valores de cadena (agregue espacios manualmente).
  • ConcatWithDash: Agrega el segundo parámetro al final del primero separado por un guión.
  • ConcatWithParentheses: Agrega el segundo parámetro al final del primero entre paréntesis.
  • ContieneAlfa: Determina si una expresión contiene un carácter alfabético (a-z). Devuelve 1 o 0.
  • Contar: Devuelve el número de elementos de un grupo.
  • FechaAñadir: Agrega una cierta cantidad de días, meses o años a una fecha.
  • DifFecha: Determina cuánto tiempo ha transcurrido entre una fecha de inicio y una fecha de finalización determinadas.
  • NombreFecha: Devuelve una parte de un valor de fecha o fecha/hora con una representación de cadena en inglés para días y meses.
  • Parte de fecha: Igual que DateName pero devuelve el número entero apropiado para un mes o día.
  • Rango denso: Numera secuencialmente cada fila dentro de un conjunto, ordenada por una o más columnas, comenzando en 1. Esta función requiere la ORDER BY modificador y también soporta el PARTITION BY modificador.
  • Diferir: Comprueba si ambos argumentos coinciden, si lo hacen, Vinyl genera uno de ellos, si no lo hacen, Vinyl lo formatea para que se vea como Valor -----> Nuevo valor
  • Escape si es necesario: escapa del nombre de una tabla o columna, si es necesario.
  • Expresión: permite al diseñador especificar su propia expresión de función para agregados.
  • DesdeOffSet: Devuelve el número de minutos para un argumento de compensación.
  • Desde la zona horaria: Convierte un DATETIME en una huso horario determinada a UTC.
  • GrupoConcat: Le permite agregar una columna de cadena en el contexto de un grupo, por ejemplo, creando una lista delimitada por comas.
  • Tiene bandera: Evalúa una expresión para determinar si el campo tiene una bandera.
  • IIF: Devuelve uno de dos valores, dependiendo de si la expresión booleana se evalúa como verdadera o falsa.
  • Es nulo: Devuelve un valor alternativo para una entrada nula, o NULL si todos los argumentos son nulos.
  • EsNumeric: Devuelve un valor booleano que indica si una expresión se puede evaluar como un número.
  • Izquierda: Devuelve un número determinado de caracteres del lado izquierdo de una cadena de texto proporcionada.
  • Longitud: Devuelve el número de caracteres de la cadena especificada, excluyendo los espacios en blanco finales.
  • Más bajo: Devuelve una cadena en minúscula.
  • Teclado L: Hace que una cadena tenga una longitud determinada.
  • Máx: Devuelve el valor más grande de una lista determinada.
  • Mín.: Devuelve el valor más pequeño de una lista determinada.
  • NuevoUUID: Genera un UUID nuevo y aleatorio para cada entrada en una tabla.
  • Ahora: Devuelve la fecha y hora actuales.
  • Nulo: Devuelve un valor nulo Ejemplo: IIF(Estado='Eliminar',Nulo, Estado)
  • Posición: Encuentra la posición de una subcadena dentro de una cadena.
  • Fuerza: Devuelve el valor de un número elevado a otro, donde ambos números se pasan como argumentos.
  • Rango: Numera secuencialmente cada fila dentro de un conjunto, ordenada por una o más columnas, comenzando en 1.
  • Numero de fila: Numera secuencialmente cada fila dentro de un conjunto, ordenada por una o más columnas, comenzando en 1. Esta función requiere la ORDER BY modificador y también soporta el PARTITION BY modificador.
  • Eliminar espacios: Elimina todos los espacios de una cadena.
  • Reemplazar: Reemplaza todas las apariciones de un valor de cadena especificado con otro valor de cadena.
  • Bien: Devuelve un número determinado de caracteres del lado derecho de una cadena de texto proporcionada.
  • Rj0: Hace que una cadena tenga una longitud determinada rellenando el comienzo de una cadena con el número 0.
  • Redondo: Redondea un número hacia arriba o hacia abajo, usando un segundo argumento para determinar a cuántos lugares a la derecha (+) o a la izquierda (-) del punto decimal redondear.
  • Rpad: Devuelve una copia de la cadena rellenada a la derecha hasta el número total de caracteres que especifica el argumento de longitud.
  • Sqrt: Devuelve la raíz cuadrada de un número.
  • Subcadena: Saca una parte de una cuerda.
  • Suma: Devuelve la suma de todos los valores.
  • Marca de tiempo: toma una cadena que es una hora y/o fecha y la convierte en una marca de tiempo.
  • Para compensar: Devuelve un desplazamiento para el argumento de los minutos.
  • A la zona horaria: Convierte un DATETIME en UTC a la huso horario dada.
  • Recortar: recorta los espacios en blanco iniciales y finales de una cadena.
  • Superior: Devuelve una expresión de caracteres con datos de caracteres en minúscula convertidos a mayúsculas.
  • UUID: Soporte nativo para UUID, estandarizándolo entre proveedores.
  • Opción de visibilidad: Proporciona la posibilidad de utilizar valores de visibilidad con nombre en una expresión.
  • Día laborable: Devuelve el día laborable de la fecha.
  • Workday: Evalúa si la fecha dada es un día laborable.

Funciones de Tiempo de Ejecución

Funciones de tiempo de ejecución son funciones que se evalúan durante el tiempo de ejecución en Vinyl, mientras que las funciones de la base de datos se traducen a una función nativa de SQL y son evaluadas por el motor de la base de datos. Las funciones de tiempo de ejecución se ejecutan en la capa empresarial de Vinyl y, por lo tanto, no pueden hacer referencia a la información almacenada en la capa de datos, como columnas de tablas y otras funciones de bases de datos.

Las funciones de tiempo de ejecución no son compatibles con las reglas de migración en Vinyl. Las reglas de migración se ejecutan en la capa de datos de Vinyl y las funciones de ejecución se ejecutan en tiempo de ejecución. Por ejemplo, no puede usar la función Enum en una regla de migración porque la función no puede acceder a la tabla y realizar la sustitución de cadena PK requerida para Enum por diseño.

En Vinyl, las funciones de tiempo de ejecución se configuran principalmente en la capa de lógica empresarial. Las funciones de tiempo de ejecución se pueden utilizar en el campo Columna o Expresión al crear la lógica para una regla comercial en Vinyl.

  • Aplicación: Devuelve el identificador de la aplicación como un UUID en el que se ejecuta el evento.
  • Llamante: Devuelve el valor de la columna de la fila que llamó al evento.
  • Cambió: Informa si se modificó el valor de una columna al inicio del evento.
  • Afirmar: Devuelve un reclamo de un proveedor de seguridad.
  • Cliente: Devuelve información del cliente como dirección IP, zona horaria, desplazamiento de zona horaria, configuración regional, etc.
  • Enumeración: un tipo de datos definido por el usuario que consta de constantes enteras.
  • Evento: Devuelve información sobre la ejecución del evento actual.
  • Generado: Recupera un valor generado durante el Evento por el motor de negocio.
  • Memoria: Devuelve el valor de la columna de la función Shared() si existe de otra manera desde la función Caller().
  • Página: Devuelve la identificación de la página.
  • Bytes aleatorios: Genera bytes aleatorios en el servidor y los devuelve como una cadena hexadecimal.
  • Reino: Devuelve el identificador del ámbito de seguridad en el que se ejecuta el evento.
  • Role: Determina si el usuario actual es miembro de un rol determinado.
  • Sesión: Devuelve el identificador de la sesión del usuario actual.
  • Compartido: Devuelve los criterios del enlace compartido.
  • Versión: Proporciona acceso a la información de la versión actual de Vinyl.
  • OMS: Devuelve información sobre el usuario que inició sesión según el parámetro especificado.