Saltar al contenido

¡Transforma tus conexiones en dinero para el final del año con nuestro nuevo Programa de Indicación de Clientes! Descubre más

Esta documentación es para la versión 4 y posteriores de App Builder, el nuevo nombre de Vinyl. Accede a la documentación de Vinyl aquí.

Ejemplo de notificación que utiliza una consultar dinámica para insertarla en una tabla HTML en Jitterbit App Builder

Este artículo ofrece una descripción general sobre cómo usar una consulta dinámica para insertar información en una tabla HTML en una regla de notificación de App Builder. Para lograrlo, se requieren varios pasos, y el artículo parte de las siguientes premisas sobre el ambiente de App Builder:

  • Ejecución de SQL 2017+, necesario para utilizar el String_Agg() Función
  • Existen tablas y datos en la capa de datos para respaldar este escenario.
  • Conocimientos básicos de la configuración de reglas de notificación.

Nota

Durante la fase de prueba de despliegue de esta (o cualquier regla de notificación), recomendamos utilizar una dirección de correo de prueba como valor Para() en la notificación hasta que funcione correctamente.

Caso de uso empresarial

Una empresa desea usar una aplicación de App Builder para gestionar el proceso de aprobación de reinicios de servidores. Como parte de los requisitos, debe enviar una notificación correo con una lista de servidores a sus respectivos propietarios a una hora específica. Quiere comprender cómo usar una regla de notificación para que funcione dinámicamente para cada propietario del servidor.

Por ejemplo:

Hay un total de 20 servidores. Mary figura como propietaria de 15 servidores. John figura como propietario de los 5 servidores restantes. Un servidor puede tener varios propietarios, por lo que John también es propietario compartido de 2 de los servidores de Mary, para un total de 7. Mary debería recibir un correo con sus 15 servidores y John debería recibir un correo con sus 7 servidores (5 de los cuales es propietario, más los dos que comparten Mary y John).

La capa empresarial contiene una vista existente con toda la información necesaria para la tabla (por ejemplo, propietarios de cada servidor, direcciones de correo).

Cómo configurar en App Builder

  1. Cree una regla de subconsulta que devuelva un registro por cada instancia de un propietario del servidor y del servidor. Incluya las columnas ServerOwnerID, ServerOwner y ServerName.
  2. Incorpore la subconsulta a una nueva regla de subconsulta y agregue la columna Server OwnerID (o equivalente). Agregue una nueva expresión para realizar una count(1) Luego, agregue las siguientes expresiones adicionales que generarán la tabla HTML:

    TableBody
    ${String_AGG('<tr> <td>' + Subquery.ServerOwner + '</td> <td>' + Subquery.ServerName + '</td> </tr>','')}

    Encabezado de tabla
    '<div>&nbsp;</div><table class="requests"> <tbody> <tr> <td>Server Owner</td> <td>ServerName</td> </tr>'

    Cerrar tabla
    '</table><div>&nbsp;</div> <div>Thanks,</div> <div>Server Team</div>'

    imagelogic.png

    Ejemplo de pestaña Columnas para subconsulta

  3. Cree una nueva regla de notificación. Incorpore la subconsulta creada con la estructura de la tabla.

  4. Únase a la subconsulta a la tabla que contiene la lista de propietarios de servidores y sus direcciones de correo.
  5. Agregue la dirección de correo y diríjala al campo Para().
  6. Añade una nueva expresión CSS para facilitar la estilización. Alias como CSS. Ejemplo CSS:

    '<style> .requests {   font-size: 14px;   line-height: 20px;   font-weight: 400;   -webkit-font-smoothing: antialiased;   font-smoothing: antialiased;   margin: 0 0 40px 0;   width: 50%;   box-shadow: 0 1px 3px rgba(0,0,0,0.2);   display: table;   border-collapse: collapse;   border: 1px solid black; } .requests tr:first-child { font-weight: 900;     background: #D3D3D3; } .requests th { border: 1px solid black; } .requests tr { border: 1px solid black; } .requests td { padding: 6px 12px; border: 1px solid black; } </style>'
    
  7. Agregue las columnas de encabezado, cuerpo y cierre de la tabla. Cree una nueva expresión que las concatene: {{Encabezado de tabla}} || {{CuerpoDeTabla}} || {{Cerrar tabla}} || {{CSS}}y Alias como Tabla.

    imagelogic2.png

    Ejemplo de la pestaña Columnas para la regla de notificación

  8. Desde la pantalla App Workbench > Notificaciones, puede modificar y probar la regla de notificación. En este punto del ejemplo, puede agregar {{Tabla|HTML}} Al cuerpo. Puede agregar cualquier otro mensaje que necesite. En este ejemplo, sustituiremos el nombre del empleado e incluiremos un enlace:

    notificationcontent.png

    Ejemplo de pantalla de notificaciones