Manejo de Bots con ejecuciones largas en Blue Prism

<< Click para mostrar Tabla de Contenidos >>

Navegación:  Bizagi Studio > Bots > Integración con un bot de Blue Prism >

Manejo de Bots con ejecuciones largas en Blue Prism

Introducción

Dado que la integración de Blue Prism siempre se ejecuta sincrónicamente, por lo tanto, si la ejecución de su robot lleva más de cuatro minutos, debe utilizar un enfoque diferente para integrar Blue Prism y Bizagi. Este artículo explica cómo manejar esta situación con la ayuda de Bizagi VBO que puede encontrar en el prisma azul DX en https://digitalexchange.blueprism.com/dx/entry/6257/solution/bizagi-integration.

 

note_pin

Un VBO es un objeto especial de Blue Prism que puede ser llamado por su proceso robot.

 

Estrategia

 

Las tareas sincrónicas bloquean el caso en el que ocurren hasta que obtienen una respuesta. Regularmente, esto no es un problema porque las integraciones tienden a responder en segundos. Sin embargo, esta no es una situación común con RPA. La tarea de bot síncrono bloqueará al usuario, la máquina y el caso durante varios minutos. Durante la ejecución, pueden producirse errores, bloquear el caso o crear datos inconsistentes.

 

Cuando se usa un bot Blue Prism, la solución es enviar los parámetros a Blue Prism desde la tarea, avanzar el caso a un evento intermedio y usar VBO de Bizagi para avanzar este evento. Dado que  VBO usa la capa oData, se necesita generar las credenciales de cliente OAuth.

 

Para configurar esta estrategia, debe seguir estos pasos:

1.Agregue un evento intermedio después de la tarea de ejecución del robot.

2.Genere las credenciales de cliente OAuth.

3.Modifique el proceso de Blue Prism para usar Bizagi VBO.

4.Cree una conexión al proceso utilizando el método de activación Disparar y Olvidar.

5.Obtenga el ID del caso usando una regla.

6.Reconfigure la conexión del Bot.

 

Ejemplo

Se utilizará el siguiente proceso como ejemplo. En él, la tarea que ejecuta el bot se llama Provide client ID.

 

BluePrism10

 

El bot Blue Prism realiza este proceso:

 

BluePrism12

Este proceso utiliza un VBO diferente para recuperar todos los datos en un cliente y luego los almacena en las variables mostradas, que son las salidas del bot.

 

Agregar un evento intermedio

El primer paso es cambiar su diagrama de proceso y agregar un evento después de la tarea que ejecuta el bot. En nuestro ejemplo, el evento Wait for BP.

 

BluePrism11

 

En el nuevo evento, cree un formulario que contenga todos los atributos vinculados con las salidas del Bot. Esto es importante porque la capa OData solo puede establecer el valor de los atributos en el formulario.

 

Genere las credenciales de cliente OAuth.

Vaya al Portal de trabajo y abra la sección Aplicación OAuth 2 ubicada en Admin -> Security -> OAuth 2 Application.

 

BluePrism13

 

 

Haga clic en el ícono más.

 

BluePrism14

 

Cree una nueva aplicación de credenciales de cliente para usar en Blue Prism.

 

BluePrism15

 

Preste atención al usuario que vincula al token, ya que debe estar autorizado para ver el proceso seleccionado. Haga clic en Guardar para generar la aplicación. Guarde el ID de cliente y el secreto de cliente generados en un lugar seguro.

 

BluePrism16

 

Modifique el proceso Blue Prism para usar VBO de Bizagi

En el VBO de Bizagi use la acción  Advance Case Task.

 

BluePrism17

 

Desde la imagen, puede ver que la actividad requiere los siguientes parámetros:

1.host_url: La dirección URL del portal de trabajo

2.client_id: ID Cliente obtenido en el paso anterior

3.client_secret: Secreto del cliente obtenido en el paso anterior

4.case_id: ID del caso que desea avanzar

5.task_id: ID del Workitem ID pendiente que se desea avanzar

6.start_parameters: Una colección de xpath y valores que contienen la información de los elementos para cargar en la forma del Workitem.

 

Los parámetros faltantes son case_id, task_id y start_parameters.

El parámetro case_id debe ser una entrada del bot. Créelo como una entrada para el proceso. Para aprender cómo obtener esta información de Bizagi, vaya a la sección Obtenga el ID del caso usando una regla de este artículo.

 

BluePrism20

 

 

El parámetro start_parameters se crea con Blue Prism Utility - Collection VBO. Esta colección debe tener dos campos, el xpath y el valor.

 

BluePrism19

 

El task_id puede obtenerse usando la actividad Get Case Pending Tasks en Bizagi VBO. Esta actividad devuelve una colección de tareas que puede usar en Blue Prism Utility - Collection VBO para extraer el ID del workitem.

 

Blue Prism Utility - Collection VBO

 

BluePrism18

 

Desde la imagen, puede ver que la actividad requiere los siguientes parámetros:

1.host_url: La dirección URL del portal de trabajo

2.client_id: ID Cliente obtenido en el paso anterior

3.client_secret: Secreto del cliente obtenido en el paso anterior

4.case_id: ID del caso que desea avanzar

 

Todos estos parámetros son variables conocidas.

Finalmente, elimine todos los resultados de la actividad final. Su proceso ahora debería ser similar a este

 

BluePrism21

 

Cree una conexión al proceso utilizando el método de activación Disparar y Olvidar

Vaya a la conexión y edite el proceso.

En el resumen de Entradas y salidas, la salida debería estar vacía y como entrada el ID del caso.

 

BluePrism22

 

En esta misma ventana, seleccione la casilla  Ejecutar sin esperar por una respuesta.

 

BluePrism23

 

Con estos cambios, Bizagi avanzará el caso sin esperar por una respuesta (salida).

 

Obtenga el ID del caso usando una regla

Como se muestra en los pasos anteriores, el envío del ID del caso al robot es primordial para el éxito de esta estrategia, por lo que debe agregar un atributo a la entidad de proceso que almacene el ID del caso.

BluePrism24

 

Para establecer este atributo, cree una regla de entrada en la tarea de bot

 

BluePrism25

 

En el ejemplo, la regla usa este código

 

<UpdateClient.CaseId> = Me.Case.Id

 

Reconfigure la conexión del Bot

Como las entradas y salidas del robot cambiaron, se debe configurar nuevamente el mapeo del bot.

 

En la ventana de Agregar parámentros de entrada, asigne el atributo ID del caso al atributo bot junto con las otras entradas.

 

BluePrism26

 

Asegúrese de que no se asigne ningún parámetro de salida.

 

BluePrism27

 

Con esto, el bot está listo para ejecutarse con Bizagi, independientemente de que su ejecución tarde varios minutos.