Bproc de Maestro

Bproc de Maestro

¿Qué es?

El bproc de Maestro permite ejecutar procesos personalizados en modo manual (opciones de menú), a través de eventos en los modos Webhook y Pregrabación, en el contexto de una instancia de un maestro donde se encuentra operando un usuario.

¿Cómo funciona?

Modos de ejecución

Si bien la ejecución es externa a GO, el Bproc interactúa con él, posteando al servicio información seleccionada por el usuario en un formato Json determinado.

Se establecen tres modos de ejecución de un Bprocs de Maestros: Manual, Webhook y Pregrabación:

Modo Webhook

Al ocurrir un evento monitoreado por un Bproc sobre un Maestro, se puede disponer de un Webhook para que ejecute automáticamente una operación determinada.

El sistema GO al detectar que ocurre un evento determinado sobre un maestro específico, puede ejecutar uno o múltiples Bprocs de Webhooks automáticamente y de forma simultánea.
Es importante remarcar que, a diferencia de las ejecuciones manuales, estas no afectan de ninguna forma a la operación principal del sistema GO, dado que se procesan de forma independiente y asincrónica, y este proceso no atiende ni le importa los resultados de las ejecuciones de estos bprocs. Solo los dispara.
Esto significa por ejemplo que, al guardar un nuevo cliente, o si un servicio del Bproc devuelve error, o se cuelga uno o varios servicios, o bien se ejecutan muchos Bprocs a la vez; los tiempos del grabado de los datos del cliente debe ser el mismo que la no existencia de Bprocs de Webhooks.

El flujo del webhook funciona de la siguiente manera:

  1. Configuración del Webhook: se establece la aplicación receptora (el servicio que desea recibir la información), se configura una URL que estará a la espera de las solicitudes entrantes
  2. Evento Desencadenante: en la aplicación emisora se desencadenará el webhook. Para que esto ocurra, se debe definir el o los eventos específicos que el sistema debe atender, como por ejemplo:
  • Bproc de Maestro: al dar de alta un cliente, modificar un proveedor, etc.
  1. Disparo del Webhook: Cuando se produce el evento desencadenante:
  • La aplicación emisora envía una solicitud HTTP POST a la URL del webhook configurado en la aplicación receptora.
  1. Procesamiento del Webhook:
  • La aplicación receptora recibe la solicitud del webhook y procesa los datos enviados, realizando las acciones necesarias en función de la información proporcionada por la solicitud.
  1. Acuse de Recibo: La aplicación receptora devuelve de forma inmediata (lo más rápido posible), el acuse de recibo, en el correspondiente Response.

Consideraciones:

  • Solo aplica a Maestros del sistema
  • La ejecución de los procesos automáticos no debe afectar de ninguna forma a la transacción principal, esto incluye los tiempos de procesamiento
  • Se incluyen los siguientes eventos:
    • Crear / Actualizar / Eliminar
  • Un usuario desarrollador puede establecer:
    • Cuales son los maestros soportados

Modo Pregrabación

Configuración y Ejecución: Similar al modo Webhook, pero el bproc se ejecuta antes de que ocurra el evento, permitiendo validaciones o modificaciones previas. Este modo es sincrónico. Si recibe algún error no permite ejecutar la acción siguiente.

Consideraciones:

  • Aplica a Maestros del sistema.
  • Permite realizar validaciones preventivas antes de confirmar un evento.

Modo Manual

Cuando el usuario ejecuta una acción manualmente dentro de un maestro, el sistema GO pierde el control y queda a la espera de que la ejecución del Bproc finalice y devuelva el resultado correspondiente.

Consideraciones:

  • Aplica a Maestros del sistema
  • La ejecución de los procesos se ejecutan de forma sincrónica, por lo que el sistema GO cede el control a la espera de una respuesta por parte del sistema.
  • Se incluyen en la consulta o edición de un entidad de Maestro existente, o bien en el alta de uno nuevo. Pero solo estarán disponibles cuando todos los datos se encuentren guardados.
  • Un usuario desarrollador puede establecer:
    • Cuales son los maestros soportados

Configuración de un Bproc Maestro

Creación de Bprocs de Maestro

  1. Ir a Menú→ Configuración →Diseño de espacio de trabajo → DICCIONARIOS → Bproc

  1. Muestra la grilla con todos los Bprocs creados separados por “Tipo”. Para crear uno seleccionar en “Nuevo”.

  1. Al ingresar, por default muestra el Bproc de Viewer, ya que en el campo “Tipo” está seleccionado Viewer. Cambiarlo por Maestro y así mostrará todas las secciones con sus campos para completar el Bproc de Maestro.
    Sus secciones son: General y Configuración.

Sección General:

Se deben completar los campos:

  • Nombre: el nombre que le asignamos a nuestro Bprocs de Maestro
  • Código: Identificador único del Bprocs de Maestro.
  • Activo: Se puede activar en el caso de seleccionar el círculo o desactivar en el caso de dejarlo vacío.
  • Tipo: en este campo elegimos el tipo de bproc que estamos creando, en este caso seleccionamos el de “Maestro”.
  • Aplicación: Identificar a qué aplicación standar o a que app custom pertenece.
  • Descripción: una breve descripción de la acción que realiza este bproc de Maestro.

Sección Configuración:

  • Maestro: Elegir el o los maestros en que queremos que el Bproc funcione:
    • Seleccionar en el botón “+”.
    • Elegir el o los maestros y seleccionar en “Aceptar”.
  • Modo: Permite diferenciar el modo de ejecución de los Bprocs. Existen tres modos:
    • Webhook: Este modo permite que el BProc se ejecute automáticamente después de que ocurra un evento específico, disparando una URL o microservicio.
    • Manual: Las actividades se configuran manualmente y se dispone un botón accionario para ejecutarlas. Los usuarios deben iniciar las acciones de manera explícita.
    • Pregrabación: Similar al modo webhook, pero el BProc se ejecuta antes de que ocurra el evento. Esto permite realizar validaciones o modificaciones antes de que se confirme el evento.

A continuación comenzaremos viendo el modo “Webhook”.

Webhook

  • URL: La URL que permite a la aplicación emisora acceder a la aplicación receptora.
  • Eventos: Seleccionar el evento en que queremos que se active el bproc:
    • Crear: Se activa cuando se crea un nuevo registro.
    • Actualizar: Se activa cuando un registro existente es modificado.
    • Eliminar: Se activa cuando un registro es eliminado.
  • Permite Reprocesado: si activas esta opción el bproc puede ser reprocesado manualmente desde el monitor.
  • Parámetros: Los parámetros no pueden ser editados ni visualizados por el usuario final quien ejecuta la transacción vinculada. Se utiliza solo a efectos de pasarle datos al servicio.

Para agregar Parámetros seleccionar en el + y se abre un pop-up.

Se deben completar los siguientes campos:

  • Nombre: el nombre que le asignamos al parámetro.
  • Descripción: una breve descripción de lo que realiza el parámetro.
  • Tipo Widget: tipo de dato del parámetro (Textbox, Integer, Long, Float, CheckBox, fecha, Selector).
  • Valor Por Defecto: el valor del parámetro.

Pregrabación

  • URL: La URL que permite a la aplicación emisora acceder a la aplicación receptora.
  • Eventos: Seleccionar el evento en que queremos que se active el bproc:
    • Crear: Se activa antes que se cree un nuevo registro.
    • Actualizar: Se activa antes que un registro existente sea modificado.
    • Eliminar: Se activa antes que un registro sea eliminado.
  • Parámetros: Los Parámetros son para una configuración previa pero no son editables por el usuario, solo pueden configurarse a través de la ruedita de configuración en el maestro de bprocs.

Para agregar Parámetros seleccionar en el + y se abre un pop-up.

Se deben completar los siguientes campos:

  • Nombre: el nombre que le asignamos al parámetro.
  • Descripción: una breve descripción de lo que realiza el parámetro.
  • Tipo Widget: tipo de dato del parámetro (Textbox, Integer, Long, Float, CheckBox, fecha, Selector).
  • Valor Por Defecto: el valor del parámetro.

Manual

  • Permite Reprocesado: si activas esta opción el bproc puede ser reprocesado manualmente desde el monitor.
  • Actividades: Son las distintas acciones que pueden ejecutarse manualmente desde un maestro.

Para agregar Actividades seleccionar en el + y se abre un pop-up.

Se deben completar los siguientes campos:

  • Nombre: el nombre que le asignamos a nuestra actividad.
  • Descripción: una breve descripción de la actividad que realiza.
  • Actualizar Formulario Al Finalizar: se actualiza el formulario de ejecución, una vez que haya finalizado el proceso.
  • Url: La URL que permite a la aplicación emisora acceder a la aplicación receptora.
    La api también permite abrir una página especificada por el servicio en una pestaña nueva en las actividades de tipo API.
    La api a la que se llame debe devolver una respuesta con Content-Type: application/json y en el cuerpo de la respuesta tiene que enviar un json con una key llamada redirectURL con la url que se va a abrir en una nueva pestaña.
    Ejemplo de respuesta de la API:
    {
    “redirectURL”: “https://finneg.com
    }
  • Parámetros: se pueden agregar parámetros por actividad.

Para agregar Parámetros seleccionar en el + y se abre un pop-up.

Se deben completar los siguientes campos:

  • Orden: orden de cómo aparecen luego los parámetros a la hora de ejecutar el Bproc.
  • Nombre: nombre del parámetro que le asignamos a nuestro parámetro.
  • Editable: permitir o denegar la edición del parámetro. Editable por el usuario ejecutor.
  • Requerido: si es requerido, en cuyo caso al momento de ejecutar la actividad, el sistema valida que se haya ingresado un valor.
  • Tipo Widget: tipo de dato del parámetro (Textbox, Integer, Long, Float, CheckBox, Fecha, Selector).
  • Valor Por Defecto: valor del parámetro.
  • Descripción: una breve descripción de lo que realiza el parámetro.

Sección Equipos:

Esta sección aparecerá para el modo Manual.

La solapa de equipos es para restringir o darle seguridad a este BProc y determinar qué equipos están autorizados a usarlo, en caso de no seleccionar ningún equipo, será visible por todos.

Para agregar equipo/s:

  1. Seleccionar en el botón “+”
  2. Elegir el/los equipo/s que queremos que tengan permiso a nuestro BProc.
  3. Seleccionar en “Aceptar”.

Vista de Bproc

Para visualizar el bproc de modo Manual que hayas creado debes ir a:

  1. Ingresar en el maestro que hayas seleccionado al crear el bproc (por ejemplo Productos )
  2. Al ingresar a “Productos” seleccionar sobre el nombre del cual quieras ejecutar el bproc. Por ejemplo seleccionamos en “ALFOMBRA//CASE REPUESTOS”.
  3. A continuación podemos ver el Bproc creado:

Aclaración: si el Maestro, no tiene ningún Bproc asociado, entonces no se muestra la opción de menú “Bproc”.

Especificación técnica

Bproc de Maestro Manual - URL

En el campo URL de una actividad del BPROC, el desarrollador indica aquí la ubicación del recurso que representa la API, donde puede también, aplicar parámetros del tipo hardcodeado como en cualquier URL.
El sistema al ejecutar el BPROC, envía adicionalmente en el Post información en formato Json. Este dispone de todos los parámetros con los valores ingresados por el usuario, y la lista con todos los campos de los registros seleccionados por el usuario al ejecutar el Bproc.

Es importante a la hora de desarrollar una API que esté preparada para recibir esta estructura de información y darle el debido tratamiento.

El formato JSON dispone:

Tanto para Documentos como para Transacciones, el Json es similar al usado en el Modo Webhook, salvo por el campo evento que representa la actividad del Bproc que el usuario ha ejecutado a través de la opción del menú.

Ejemplo con un Maestro:

262x303

Bproc de aplicación estándar

Para realizar modificaciones y ajustes sobre un Bproc de aplicación estándar se realiza desde el botón de ajustes que se encuentra en el menú del bproc seleccionado.
Esta opción también está habilitada para aplicaciones no estándar.

Bproc de Maestro - Modo Webhook / Modo Pregrabación

General:

  • Se puede activar y desactivar el Bproc completamente.
  • Dentro de la lista de maestros definidos como estándar, permite a un usuario del cliente, deshabilitar y volver a activar si lo desea una o varias opciones.

Parámetros:

  • Se puede modificar el valor de los parámetros creados.

Equipos:

  • Se puede agregar y/o quitar equipos.

Bproc de Maestro - Modo Manual

General:

  • Se puede activar y desactivar el Bproc completamente.
  • Dentro de la lista de maestros definidos como estándar, permite a un usuario del cliente, deshabilitar y volver a activar si lo desea una o varias opciones.

Parámetros:

Para la actividad seleccionada:
Permite configurar parámetros de a una actividad estándar seleccionada a la vez

  • Actividad: seleccionas la actividad que necesites modificar.
  • Activo: habilitar/deshabilitar por actividad.
  • Actualizar formulario al finalizar: habilitar/deshabilitar por actividad.
  • Parámetros: permite configurar los parámetros de cada actividad del Bproc, todos los valores por defecto de sus parámetros, e indicar si estos pueden ser modificados por el usuario ejecutor.

Equipos:

  • Se puede agregar y/o quitar equipos.

Caso de Uso

Modo Manual:
Caso de Uso de Ejemplo

Cambiar el estado de un cliente a VIP, y otorgar beneficios comerciales:
Un usuario avanzado crea un Bproc “Cliente VIP”, cuyas acciones son “Pasar a VIP”, “Anular VIP”, el cual se habilita para la transacción de edición/modificación de un Cliente.

Ejecución de la Acción “Pasar a VIP”:

Al ser ejecutada esta acción por el usuario final, el Bproc realiza múltiples ajustes en el sistema usando una API específica desarrollada solo para este fin.
La misma aplica los siguientes cambios al cliente activo:

  1. Cambiar tipo de cliente a VIP
  2. Habilitar conceptos especiales de bonificación
  3. Ampliar el límite de crédito de CC del Cliente
  4. Fin.

Modo Webhook:
Caso de Uso de Ejemplo

Se detalla a continuación un caso de uso que puede llegar a implementarse con esta herramienta:

Envío de Email de bienvenida a un nuevo cliente, con promociones

Se necesita poder dar la bienvenida formal a nuevos clientes, y brindar información importante que le puede resultar de interés, y adicionalmente enviarle un set de promociones por única vez.

Solución propuesta:

Se crea el siguiente webhook “Ofertas de bienvenida”

Cuando se ejecuta:
Al dar de alta un cliente nuevo, desde una vista específica que brinde información del cliente, vinculado a sus preferencias.

Qué hace el webhook:
En función a esas preferencias, genera el cuerpo del mail dinámicamente, dándole la bienvenida, brindándole información de la empresa que le puede ser de interés (links, teléfonos, etc.) y, en función de las preferencias y categoría de cliente, ofrecerle las mejores promociones disponibles, cada una con su propio periodo de vigencia.

Ver más
2 Me gusta