Saltar al contenido

Funciones SQL Definidas por el Usuario

Vinyl 2.3 introduce soporte para funciones SQL definidas por el usuario. La sintaxis de la función SQL utilizada debe estar en línea con la sintaxis compatible con Vinyl para la sustitución de parámetros.

Ejemplo de Función SQL Definida por el Usuario

A modo de ilustración, describiremos un caso de uso para tener una función SQL definida por el usuario:

  • Tienes dos tablas: Empleados (tabla original) y EmployeesPanel (tabla nueva)
  • Ambas tablas tienen las mismas claves.
  • Una tabla contiene valores cargados desde la fuente de datos, la otra se usó como fuente de panel

¡Si con el escenario anterior desea mostrar el valor original o el valor original! '-------'!! Nuevo valor para un campo en particular, puede hacerlo con una función SQL definida por el usuario. En este ejemplo, usaremos una función SQL definida por el usuario para comparar el valor de Nombre de nuestra tabla original (Empleados, alias como E) y la tabla Nueva (EmployeesPanel, alias como EP).

Aquí está la definición de nuestro ejemplo de función SQL definida por el usuario:

IIF({0} = {1}, {0}, {0}  || '------>' || {1})

Aquí hay una captura de pantalla que ilustra cómo se vería este escenario de ejemplo que utiliza una función SQL definida por el usuario desde la vista de la aplicación Vinyl:

Udfsql

Para Crear una Función SQL Definida por el Usuario

Las funciones SQL definidas por el usuario se crean en el área Configuraciones de Vinyl IDE, en la pantalla Funciones.

  1. Vaya al cajón de acciones y seleccione Vinyl IDE en el menú.
  2. Seleccione Configurar su sitio en el menú Configurar.
  3. Haga clic en Funciones
  4. Haga clic en el botón Crear para agregar una nueva función SQL definida por el usuario.
  5. Proporcione información sobre la función SQL definida por el usuario:

    • Propietario - Valor predeterminado
    • Tipo - MVSQL o SQL
    • Nombre: nombre definido por el usuario para la función, debe comenzar con un carácter de subrayado. Por ejemplo, _DiffFirstName
    • Número de argumentos - Número de argumentos en la función
    • Definición - La sintaxis SQL real para la función
    • Descripción - Descripción de texto de lo que hace la función SQL
    • Ejemplo - Un ejemplo usando la función SQL
    • Resultados de ejemplo - Resultados de la función SQL

    Udffunción

  6. Haga clic en Guardar

Para Utilizar una Función SQL Definida por el Usuario en una Regla

Una vez que haya creado una función SQL definida por el usuario, estará listo para usarla en una regla de objeto comercial.

  1. Vaya al cajón de acciones y seleccione Vinyl IDE en el menú.
  2. Haga clic en Crea tu aplicación en el menú Crear.
  3. Haga clic en el botón de menú Capa de lógica empresarial.
  4. Haga clic en el ícono BOBJ para la fuente de datos de su aplicación.
  5. Haga clic en Crear en Reglas.
  6. Asigne un Nombre para la función SQL definida por el usuario y seleccione Objeto comercial como Propósito.
  7. Haga clic en Guardar
  8. Haga clic en el icono SQL para definir la lógica SQL para la función SQL definida por el usuario. Los pasos para configurar esta función son similares a cómo trabaja para definir otras funciones SQL en Vinyl. Cuando llegue al panel Columnas, hará referencia al nombre de la función SQL definida por el usuario junto con la sintaxis:

    Columna

  9. Si desea utilizar el valor de la columna de la función SQL definida por el usuario en otra parte de la aplicación, haga clic en Crear en Columnas y agregue una ID única que unirá las tablas.

  10. En este ejemplo, queremos ver los resultados de la función SQL definida por el usuario en el Panel de empleados que utiliza EmployeesPanel (Fuente). Vaya a la lógica empresarial de EmployeesPanel (fuente) y haga clic en el icono SQL para el objeto empresarial de EmployeesPanel (fuente).
  11. Haga clic en Crear en Tablas e introduzca la regla de objeto comercial de función SQL definida por el usuario. En este ejemplo, son Empleados (UDF _DiffFirstName).
  12. Cree una unión interna en la mesa y la regla
  13. Unir las columnas de la ID única
  14. Haga clic en Crear en Columnas para agregar una columna con el valor resultante de su función SQL definida por el usuario que desea ver. Asigne un Alias y haga clic en la marca de verificación para guardar.

Nota

Esta función supone que la persona que crea una función SQL definida por el usuario conoce la sintaxis compatible con Vinyl para la sustitución de parámetros con funciones SQL.