Меню

Plantilla de proyecto
Al crear un nuevo proyecto, es posible seleccionar una plantilla de proyecto que ya contenga una estructura de proyecto lista para usar y dotada, que tenga en cuenta los mejores patrones de diseño y prácticas de desarrollo de robots. (U).

Hasta ahora se ha aplicado una plantilla de proyecto – "Plantilla universal".

En el futuro, las plantillas integradas en PIX Studio se complementarán con plantillas especializadas, así como con la posibilidad de crear plantillas propias y descargar plantillas adicionales de un Marketplace y PIX Master.

Plantilla universal — es una plantilla de proyecto diseñada para procesar los elementos de la cola de datos del PIX Master basándose en un mecanismo de autómatas limitados (State Machine) e incluye en su estructura métodos de recuperación de datos, gestión de excepciones, inicialización de la aplicación, mecanismo de detención suave, operaciones de registro, etc, compilados en contenedores.

Todos los contenedores están vinculados por transiciones, que forman la estructura y la lógica de un script de automatización estándar para manejar escenarios empresariales complejos.
Crear un proyecto a partir de una plantilla

Para crear un proyecto a partir de una plantilla de proyecto, selecciónela en la ventana de creación de proyectos (U).

La plantilla de proyecto ya contiene una estructura de proyecto lista para usar y rellenar que tiene en cuenta los mejores patrones de diseño y prácticas de desarrollo de robots.

A continuación se describen los bloques y scripts de la plantilla de proyecto: sus funciones, estructura y relaciones.

1. Inicialización (bloque [INIT]): se utiliza para inicializar el archivo de configuración y todas las demás aplicaciones a las que se accede en el proyecto. En caso de error (excepción), el proceso pasará al estado de Finalización del proceso [END], y en caso de que la inicialización tenga éxito, el proceso pasará al estado de Recibir un elemento [GET].

Scripts (.pix) utilizados en el bloque [INIT]:

  • ReadConfig.pix - este script inicializa y forma la variable de configuración del proyecto (tipo Dictionary <string, object>), cuyos datos se utilizarán en los scripts del proyecto. La fuente de datos es el archivo Config.xlsx almacenado en la carpeta Project/Data:
  1. Las Hojas [Settings] y [Constants] contienen datos con ajustes constantes.
  2. La Hoja[Assets] – lista de recursos que se recuperan del PIX Master "Datos" mediante las correspondientes claves predefinidas cuando se ejecuta el script.

  • KillApplications.pix - este script se utiliza para finalizar aplicaciones/programas en segundo plano o activos, de modo que el robot se inicie en un entorno limpio - sin la interferencia de ejecución de intentar reabrir aplicaciones ya en ejecución.
IMPORTANTE! Se recomienda terminar los programas cerrándolos normalmente, en lugar de bloquear procesos, porque puede provocar un comportamiento erróneo al reiniciarlos.
InitApplications.pix - este script está pensado para abrir/iniciar aplicaciones o procesos que se utilizan en el proyecto (por ejemplo, "Abrir aplicación", "Abrir navegador", ir al sitio en la URL especificada en el archivo de configuración.).

Para finalizar el funcionamiento del robot - pasar al bloque Fin de proceso [END] - cuando se produce un error del sistema después de apagar la unidad [INIT] La comprobación de SystemException se implementa utilizando la actividad "Afirmación condicional"..

2. Recibir un elemento de la cola (bloque [GET]) - está diseñado para recuperar elementos de la cola de datos de PIX Master y organizar su procesamiento posterior.

A falta de datos para el proceso (elemento de la cola no recibido) - se realiza la transición al estado Fin de proceso [END], de lo contrario - al bloque Procesamiento de elementos en cola [PROCESS] para continuar la ejecución.

Además, al principio del bloque, se comprueba la señal de "Detención suave" configurada en el PIX Master (ver nota "Detención suave" en la base de conocimientos de PIX RPA).

* Las primeras versiones de la plantilla utilizaban una lógica ahora irrelevante para utilizar el mecanismo de detención del robot, que implicaba introducir y almacenar el estado de detención en el PIX Master "Datos". En este caso, la detención no se controlaba desde los controles ya estándar de la sección "Tareas", sino cambiando manualmente el valor del parámetro en "Datos".

El bloque [GET] contiene el script:

  • GetTransactionItem.pix, que recibe el elemento (para su posterior procesamiento) desde PIX Master, brokers de mensajes, bases de datos, clientes de correo, etc. Es típico que una plantilla universal utilice la recuperación de datos de las colas de Pix Master. Si no hay elementos que procesar, el flujo de control pasa al bloque Fin de proceso [END].
IMPORTANTE! Por defecto, la fuente de elementos para su posterior procesamiento son las colas de datos de PIX Master.
Si no se utilizan las colas de datos en un proyecto concreto, la actividad PIX Master del script GetTransactionItem.pix debe sustituirse por otra adecuada. Por ejemplo, es posible utilizar la actividad HTTP para recuperar datos del intermediario de mensajes RabbitMQ - "Enviar solicitud HTTP".
3. Procesamiento de elementos en cola (bloque [PROCESS]) - en este bloque se realiza el procesamiento del elemento recibido.
Un resultado típico del procesamiento es la generación de registros en sistemas contables, archivos de informes, documentos, etc.

Se define y almacena un estado para el tratamiento de un elemento:
  • Processed – tratamiento correcto de los artículos;
  • Failed с System Exception (Tipo de error = «Technical» en Master) – al procesar un elemento, se recibe un error del sistema relacionado con un problema técnico, por ejemplo - si la aplicación no está disponible / no responde. Usted puede tratar de resolver tales problemas proporcionando repetidos intentos de procesar el elemento (retry), a medida que la aplicación esté disponible.
  • Failed с Business Exception (Tipo de error = «Business» en Master) – al procesar un elemento, se recibe un error de gestión debido a que los datos de los que depende la ejecución del proyecto son incorrectos, están incompletos o faltan. En este caso, un intento repetido de procesar el elemento no dará resultados y es necesario proporcionar un log de errores para su posterior notificación al empleado que participa en el proceso empresarial.
Si se produce una excepción del sistema, la ejecución del proyecto pasará al bloque Inicialización [INIT].

En el caso de una empresa se salta el elemento de exclusión y el proyecto pasa al bloque Recibir un elemento de la cola [GET] para obtener el siguiente elemento.

En caso de tramitación satisfactoria del elemento, el proyecto pasará al bloque Recibir un elemento de la cola [GET], para obtener el siguiente elemento.

En el bloque [PROCESS] se utilizan las siguientes secuencias de comandos (.pix):
  • ProcessTransactionItem.pix - este script realiza el procesamiento específico del elemento. En este script, el usuario puede añadir varios scripts de trabajo vinculados por un proceso de trabajo. Este script contiene la parte principal de la lógica de todo el proyecto en ejecución, procesando cada elemento recibido.
  • SetTransactionStatus.pix - este script determina el estado del procesamiento de elementos y guarda información sobre los errores que se han producido durante el procesamiento de elementos. Cuando se produce un error del sistema, se llama al script SetTransactionStatus.pix:
  1. TakeScreenshot.pix para guardar una captura de pantalla (se define mediante XPath), en un directorio definido por el usuario.
4. Fin del proceso (bloque [END]): es el bloque final de "Plantilla universal". que cierra todas las aplicaciones en uso y detiene el proyecto.

A continuación se muestran los scripts (.pix) del bloque [END]:
  • CloseAllApplications.pix - este script termina y cierra todas las aplicaciones que se inicializaron al inicio del proceso.
  • KillApplications.pix - ver descripción en el bloque [INIT].

Todos los scripts de los bloques mencionados anteriormente se colocan en la carpeta Framework del proyecto (F).


Estructura - bloques|scripts y proceso - enlaces y condiciones de control:

Anexo
Características de la Plantilla de Proyecto PIX RPA en comparación con el ReFramework en UiPath
Desde la "Plantilla universal". PIX está directamente relacionado con la estructura UiPath de ReFramework, los usuarios que cambien a PIX deben tener en cuenta las siguientes características cuando lo utilicen:
  • Trabajar con variables - En UiPath, las variables se introducen a través de un panel separado "Variables". En PIX RPA, las variables se introducen mientras el robot está en marcha (a través de las propiedades externas). Por lo tanto, las variables declaradas en un área UiPath concreta son pasos separados "Asignar valor";
  • Construcción general de la plantilla - PIX carece de la capacidad de describir un script como un Diagrama de Flujo, como se hace en UIPath. Para implementar la lógica del Diagrama de Flujo con un gran número de ramas y transiciones repetidas (Transitions) al mismo bloque, PIX utiliza el paso de transicionar explícitamente la ejecución del robot al paso utilizando la actividad "Mover al paso" (disponible a partir de la versión 2.8) (Operador GoTo análogo).
  • Trabajar con el Estado - Los principales estados de UIPath están organizados en PIX como 4 recipientes. Estos recipientes contienen la lógica de un estado concreto. Entre los contenedores principales hay una lógica de operadores condicionales, que toman como salida el valor del parámetro de control del que depende la transición (o no) entre los distintos contenedores (lógica de condiciones por Transition). La transición de paso especifica el bloque (utilizando el ID de paso) al que se desplaza la ejecución

Lógica de transición en UiPath

Lógica de transición en PIX
Además, puede descargar la presentación "Plantillas de proyectos".