Cómo manipular un archivo JSON en Automation Anywhere

<< Clic para mostrar Tabla de Contenidos >>

Navegación:  Automatización de Procesos con poco código > Studio Cloud -ambiente de autoría > Bizagi Studio > Bots > Integración con un bot de Automation Anywhere >

Cómo manipular un archivo JSON en Automation Anywhere

Introducción

Como se explica en El Metabot de Automation Anywhere , el Metabot de Bizagi es utilizado por Automation Anywhere, para que este pueda utilizar distintas acciones a través de la capa OData e interactuar con Bizagi. Dentro de las operaciones que puede ejecutar el Metabot de Bizagi, algunas devuelven un JSON con el resultado de la invocación del bot. Estas operaciones son:

GetProcess

GetCasesByProcess

GetWorkitemsByCase

 

Si el JSON retornado por Automation Anywhere contiene un sólo objeto (un proceso, un caso, un workitem), su información puede procesarse facilmente. Sin embargo, en escenarios donde se retorna más de un objeto, el Metabot de Bizagi no es capaz de parsear el JSON (por ejemplo, iterar el JSON para obtener un resultado individual de la invocación). Por ejemplo, para obtener la información de un caso, se necesita el ID del proceso. El método GetProcess retorna todos los procesos a los que un usuario autenticado tiene acceso; por lo tanto, si tiene acceso a más de un proceso, debe tomar el ID específico de la respuesta del método GetProcess y usarla para obtener la información de sus casos. Esto significa que se debe realizar una tarea manual durante la ejecución del bot para completar la tarea deseada, lo que va en contra de la idea de tener un robot completando un proceso sin interacción humana. La siguiente imagen ilustra el escenario anterior.

 

AutomationAnywhere062

 

Para completar caminos como el presentado arriba, Automation Anywhere ofrece el Metabot JSON-to-XML. Este Metabot convierte un archivo JSON a un archivo XML, el cual puede manipularse para que no haya intervención humana durante el proceso anterior. En ese orden de ideas, es necesario primero convertir el archivo JSON en un archivo XML, para que la información de los casos pueda ser accedida desde AA.

 

AutomationAnywhere063

 

Antes de comenzar

Antes de manipular su archivo JSON en Automation Anywhere, considere lo siguiente:

Los artículos descritos en este artículo aplican únicamente para Automation Anywhere versión 11.3.

Puede descargar el Metabot JSON-To-XML aquí.

 

¿Qué necesita hacer?

En este ejemplo, se quiere ejecutar un workitem específico de un caso dado. Para procesar el archivo JSON retornado por el bot de Bizagi, complete estos pasos:

 

1.En Automation Anywhere Enterprise Client, incluya el Metabot de Bizagi y el Metabot JsonToXML en la sección de Metabots.

 

AutomationAnywhere064

 

2.Utilice el Metabot de Bizagi para ejecutar la acción de GetWorkitemsByCase. Asegúrese de crear una variable local para guardar la respuesta del Metabot.

 

AutomationAnywhere065

 

3.Una vez tenga el JSON con los workitems del caso, es necesario hacer el archivo plano.

a.Para hacer esto, seleccione el comando de String Operation y arrastre la acción de Length. Configure la variable local donde guardó el JSON como el Source String, y guarde esto en otra variable:

 

AutomationAnywhere066

 

b.Agregue el comando de Variable Operation y reste dos a la variable de tamaño definida en el paso anterior.

 

AutomationAnywhere067

 

c.En el comando de String Operation, arrastre la acción de SubString. Configure la variable local donde el JSON está guardado como el Source String. Comience la cadena desde la segunda posición, hasta el tamaño definido en el paso anterior. La cadena resultante debe guardarse en una variable.

 

AutomationAnywhere068

 

4.Después de que ha convertido el JSON en un archivo plano, está listo para transformarlo en un XML. Para hacer esto, utilice la acción de JsonToXmlResponse del Metabot JsonToXml. Defina como parámetros de entrada salida, la variable donde guardó el archivo plano.

 

AutomationAnywhere069

 

5.Ahora, con el XML en una variable local, obtenga el WorkitemID de allí. Arrastre la acción de StartXMLSession. Asigne un nombre y utilice como entrada la variable donde guardó el XML.

 

AutomationAnywhere070

 

6.Utilice el comando de Get Node(s) para obtener el nodo de ID en el XML. Utilice el Session Name definido en el paso anterior, y para el campo de XPath Expression, escriba /Root/id.

 

AutomationAnywhere071

 

Ahora el ID está almacenado en una variable local, y es posible ejecutar la acción de AddStartParameter para avanzar el caso en el workitem específico.


Last Updated 12/12/2024 12:06:14 PM