robot
2023.10
false
UiPath logo, featuring letters U and I in white
Guide de l'utilisateur du Robot
Last updated 25 oct. 2024

Arrêter un processus :

Un processus peut être arrêté via les commandes Arrêt progressif ou Forcer l'arrêt.

Commande d'arrêt progressif

La commande Arrêt progressif marque le processus dans un état Devrait s'arrêter. Cet état peut être interrogé à partir du workflow encore en cours d'exécution à l'aide de l'activité Devrait s'arrêter. Le workflow doit passer explicitement par cet état puis se terminer. Le workflow ne s'arrête pas automatiquement sans être passé par l'état Devrait s'arrêter. Voir REFramework pour un scénario qui se sert de l'Arrêt progressif.

La commande Arrêter est conçue pour les automatisations Unattended et est uniquement disponible dans Orchestrator. Dans Orchestrator, la commande Arrêt progressif se nomme Arrêter.

Commande Forcer l'arrêt

La commande Forcer l’arrêt commence par envoyer une requête Annuler au workflow. La requête Annuler du workflow est différente de l'activité Devrait s’arrêter.Annuler est un signal de workflow automatiquement géré par le workflow. Le signal entraîne l’annulation en cascade des activités tout en permettant aux blocs Enfin du workflow d’exécuter des étapes de nettoyage. Si le signal Annuler n'arrête pas le workflow dans les trois secondes, la tâche sera terminée en forçant l'arrêt de toutes les activités en cours, quel que soit leur stade d'exécution.

La commande Forcer l’arrêt a été conçue pour les automatisations Attended et est disponible dans Orchestrator ainsi que dans les clients de bureau et les API telles que Assistant, Studio et RobotJS. Dans les clients de bureau, la commande Forcer l’arrêt se nomme Arrêter.

Le scénario du processus REFramework

REFramework exploite la commande Arrêt progressif.

Dans le scénario REFramework, lorsqu'un processus est arrêté, le bloc contenant la logique d'erreur est ignoré et le bloc final est exécuté. Les valeurs BusinessError et SystemError restent ainsi null et l'état global du processus est considéré comme réussi. Le comportement décrit est intentionnel.

Scénario try-catch

Au cours d'un flux de travail Essayer de capturer, lorsqu'un processus est arrêté, l'état de la transaction peut s'afficher comme réussie alors qu'elle n'est pas terminée.

Annulation d’un processus

Si l’exécution se trouve dans le bloc Try ou Catch lorsque la commande Annuler est reçue par le Robot, elle passe au bloc Finally qui vérifie les erreurs. Si aucune erreur n’est trouvée, le bloc Finally considère que l’exécution s’est terminée avec succès car il n’y a pas d’événements d’échec (ils sont vides).

Forcer l’arrêt d'un processus

Si l'exécution se trouve dans le bloc Try (Essayer) ou Catch (Catch) lorsque la commande Kill (Kill) est reçue par le Robot, il essaie d'abord d'annuler le processus, en passant au bloc Finalement (Finally). Si la logique à l'intérieur du bloc Finalement n'est pas terminée dans les trois secondes suivant la réception de la commande Annuler , toute l'exécution est arrêtée et le processus global est enregistré avec succès dans les journaux car aucune erreur n'a été enregistrée dans le bloc Capturer depuis qu'il a été ignoré.

Éviter les faux positifs
  • La configuration du statut du processus sur Successful ne doit être effectuée qu’à l’intérieur du bloc Try, une fois la Business Logic terminée.
  • La configuration du statut sur Failed ne doit être effectuée qu’à l’intérieur du bloc Catch, une fois logique de gestion des erreurs terminée.
  • Dans le bloc Finally, il ne devrait y avoir que la logique de nettoyage présente, car elle est exécutée, peu importe si l’exécution a été réussie ou non.

S'assurer que la logique d'erreur est bien exécutée

Si le bloc qui contient la logique d’erreur est ignoré, les valeurs pour BusinessError et SystemError restent null et le statut global du processus est considéré comme successful, car aucune erreur n’a été enregistrée.

Cette page vous a-t-elle été utile ?

Obtenez l'aide dont vous avez besoin
Formation RPA - Cours d'automatisation
Forum de la communauté UiPath
Uipath Logo White
Confiance et sécurité
© 2005-2024 UiPath Tous droits réservés.