Control de excepciones

Completado

Pueden surgir excepciones de prácticamente cualquier acción. Por esta razón, la mayoría de las propiedades de las acciones contienen un botón Al producirse error. Este botón permite acceder a la configuración de control de excepciones de la acción.

Control de excepciones en el nivel de acción

En el ejemplo inicial, mencionamos que la base de datos del cliente puede ser inaccesible, provocando que la acción que se comunica con la base de datos produzca una excepción.

Para evitar esto, abra las propiedades de la acción y presione el botón Al producirse error.

Control de excepciones en las propiedades de la acción Abrir conexión SQL.

En esta vista, podrá configurar el comportamiento del control de excepciones de la acción, ya sea activando reglas preestablecidas o agregando nuevas. Estas reglas se aplican si la acción falla, y en el orden en que están dispuestas:

Pestaña Control de excepciones rellena en las propiedades de la acción Abrir conexión SQL

Nota

Puede arrastrar y soltar las reglas creadas por el usuario para reorganizarlas.

En el caso anterior, por ejemplo, si se producen errores en esta acción, volverá a intentarlo una vez más pasados 2 segundos, y luego ejecutará un subflujo que enviará un correo electrónico para notificar al administrador el estado de la base de datos. Además, la acción cambiará el valor de una variable que indica que la base de datos está inactiva.

De forma predeterminada, el control de excepciones actúa cuando se produce alguna excepción al ejecutarse esta acción; sin embargo, puede configurarlo para que el control de excepciones se produzca solo con un tipo específico de excepción. Cada acción tiene tipos de excepción específicos que pueden producir:

Pestaña Control de excepciones rellena en las propiedades de la acción Abrir conexión SQL con excepciones seleccionadas.

En este ejemplo, las reglas de control de excepciones solo se aplicarán cuando ocurra la excepción No se puede conectar con el origen de datos.

Control de excepciones en el nivel de bloque

Hay casos en los que no se puede estar seguro de qué acción corre el riesgo de fallar y no es práctico aplicar las mismas reglas de control de excepciones a cada acción.

Por ejemplo, considere un flujo en el que Power Automate para escritorio interactúa con el portal web. Si en algún momento durante esta tarea el portal o el navegador no responde, la acción preferida es cerrar el navegador, iniciarlo nuevamente y reiniciar toda la interacción del portal web desde el principio. Sin embargo, la interacción de un portal web puede abarcar decenas o incluso cientos de acciones; por lo que asignar las mismas reglas de control de excepciones a cada acción individualmente no es práctico.

La acción En error del bloque permite aplicar un conjunto de reglas de control de excepciones a un bloque completo de acciones:

Cuadro de diálogo de propiedades de la acción En error del bloque.

Las acciones entre En error del bloque y Finalización se ven afectadas por las reglas de control de excepciones del bloque:

Espacio de trabajo con un ejemplo que utiliza la acción En error del bloque.

En este ejemplo, si alguna de las acciones dentro del bloque falla, las reglas del bloque entrarán en vigencia; se ejecutará un subflujo que cierra el navegador web y se repetirá todo el bloque, evitando así que el flujo se bloquee debido a una página web o navegador que no responde.

Prioridades del control de excepciones

El orden en el que se aplica el control de excepciones es de abajo arriba; esto significa que, en caso de que una acción falle, sus reglas de control de excepciones individuales entrarán en vigor inmediatamente. Si esto no basta para reanudar el flujo, se aplicará cualquier control de excepciones en el nivel de bloque.

Por lo tanto, las reglas de control de excepciones en el nivel de acción se ejecutan antes que las reglas de nivel de bloque correspondientes.