Robot
2023.4
False
Imagen de fondo del banner
Guía de usuario del robot
Última actualización 3 de abr. de 2024

Detención de un proceso

Un proceso puede detenerse bien mediante comandos de Parada suave o de Terminación.

Comando Parada suave

El comando de Parada suave marca el proceso en un estado de debería pararse. Este estado puede consultarse desde el flujo de trabajo aún en ejecución usando la actividad Debería parar. El flujo de trabajo debe manejar de forma explícita este estado y finalizar. El flujo de trabajo no se detiene automáticamente sin manejar el estado de debería parar. Consulta REFramework para ver un escenario que aprovecha la Parada suave.

El comando Parar está diseñado para automatizaciones desatendidas y está disponible solamente en Orchestrator. En Orchestrator, el comando Parada suave se llama Parada.

Comando Finalizar

El comando Terminar primero envía una solicitud de Cancelar al flujo de trabajo. La solicitud de Cancelar del flujo de trabajo es diferente de debería parar.Cancelar es una señal del flujo de trabajo que se maneja de forma automática por parte del flujo de trabajo. La señal hace que las actividades se cancelen en cascada mientras permite que los bloques Finalmente del flujo de trabajo ejecuten pasos de limpieza. Si la señal de Cancelar no detiene el flujo de trabajo en tres segundos, el trabajo se finaliza deteniendo a la fuerza cualquier actividad en ejecución en cualquier punto de su ejecución.

El comando Terminar está diseñado para automatizaciones atendidas y está disponible en Orchestrator y en clientes de escritorio y API tales como Assistant, Studio, RobotJS. En clientes de escritorio, el comando Finalizar se llama Parada.

La situación del proceso REFramework

REFramework aprovecha el comando Parada suave.

Al detener un proceso, se salta el bloque que contiene la lógica de error y se ejecuta el bloque final. Esto hace que los valores de BusinessError y SystemError permanezcan null y el estado del proceso general se considere exitoso. La conducta descrita es intencionada.

Situación de intento de captura

Durante un flujo de trabajo de intento de captura, cuando se detiene un proceso, el estado de la transacción se puede mostrar como exitoso cuando en realidad no se ha completado.

Cancelación de un proceso

Si la ejecución está en el bloque Prueba o Captura cuando el robot recibe el comando Cancelar, salta al bloque Finalmente que comprueba cualquier error. Si no se encuentran errores, entonces el bloque Finalmente cree que la ejecución se ha completado con éxito, ya que no hay eventos de fallo (están en blanco).

Cierre de un proceso

Si la ejecución está en el bloque Prueba o Captura cuando el robot recibe el comando Cerrar, primero intenta Cancelar el proceso, saltando al bloque Finalmente. Si la lógica dentro del bloque Finalmente no finaliza en tres segundos desde que se recibe el comando Cancelar, se detiene toda la ejecución y el proceso en general es exitoso en los registros ya que no se registraron errores en el bloque Capturar ya que fue omitido.

Evitar falsos positivos
  • Establecer el estado del proceso en Successful debe realizarse solo dentro del bloque Prueba, después de completar la lógica comercial.
  • Establecer el estado como Failed solo debe realizarse dentro del bloque Captura, después de completar la lógica de manejo de error.
  • En el bloque Finalmente solo debe haber presente lógica de limpieza, ya que se ejecuta independientemente de si la ejecución tuvo éxito o no.

Asegúrate de que se ejecuta el error de lógica

Si se ha saltado el bloque que contiene la lógica de error, los valores para BusinessError y SystemError se mantienen null y el estado del proceso general se considera successful, ya que no se registraron errores.

Was this page helpful?

Obtén la ayuda que necesitas
RPA para el aprendizaje - Cursos de automatización
Foro de la comunidad UiPath
Logotipo blanco de UiPath
Confianza y seguridad
© 2005-2024 UiPath. All rights reserved.