Filtrando
Hay dos tipos de filtrado que pueden tener lugar en una ruta del controlador de errores.
Añadir un filtro a la ruta del controlador de error
Puede utilizar un filtro para controlar qué errores gestiona la ruta del controlador de errores. Esto le permite procesar solamente tipos específicos de errores. Si un error no pasa el filtro, se tratará como si no hubiera ninguna ruta del controlador de errores definida para el módulo dado.
Estos filtros están configurados como cualquier otro filtro en Fusion. Para obtener instrucciones, vea Agregar un filtro a un escenario.
Agregar un enrutador seguido de filtros al controlador de errores
Agregar un enrutador a una ruta de control de errores permite configurar diferentes rutas para distintos tipos de errores.
Por ejemplo, para configurar una ruta que se ejecutará cuando el error sea un DataError, puede configurar un filtro que permita que los datos pasen si el tipo de error asignado es igual a DataError.
Para obtener información sobre cómo Fusion evalúa y procesa varios tipos de datos, consulte Tipos de error.
Ejemplo: Control de errores con filtros
Este escenario de ejemplo muestra cómo funcionan estos filtros para la administración de errores.
Si utiliza Dropbox > Crear un módulo de carpeta y ya existe una carpeta con el mismo nombre, el módulo genera un error de datos:
El escenario completo funciona de la siguiente manera:
-
El módulo Herramientas > Establecer variable contiene el nombre de la carpeta
-
El módulo HTTP > Obtener un archivo obtiene el archivo que debe cargarse en la carpeta
-
El módulo Dropbox > Crear una carpeta genera un error si ya existe una carpeta con el mismo nombre que la asignada en el módulo
-
La ruta del controlador de errores (burbujas transparentes) contiene un enrutador para filtrar los errores
La primera ruta es para un tipo de error especificado denominadoDataError
.- Si se produce un
DataError
y los detalles del error pasan a través del filtro, Dropbox >Enumerar todos los archivos/subcarpetas en un módulo de carpetas enumera todas las carpetas de Dropbox. - El filtro siguiente coincide con los nombres de carpeta.
- La directiva Resume especifica el ID de carpeta y la ruta de acceso de la carpeta existente, y la ejecución del escenario se reanuda desde el módulo Dropbox > Crear una carpeta. Sin embargo, en lugar de crear una carpeta nueva, Fusion utiliza los valores de la directiva Resume para pasar al siguiente módulo y cargar el archivo en la carpeta existente.
- Si se produce un
-
La segunda ruta es para todos los demás errores y termina con la directiva Rollback, lo que resulta en detener el escenario inmediatamente
A continuación se muestra una explicación detallada de la ruta DataError.
Para utilizar la carpeta existente en los módulos posteriores, como Upload a file, debe añadir una ruta de controlador de error al módulo y recuperar la ruta de la carpeta que se va a asignar al módulo de directiva Resume que sigue:
El filtro de la primera ruta está configurado para controlar únicamente el error concreto (DataError) que aparece cuando ya existe una carpeta con el mismo nombre:
El módulo Dropbox > Lista de todos los archivos de una carpeta está configurado para devolver todas las carpetas de la carpeta de destino. El siguiente filtro solo pasa el que estábamos intentando crear originalmente. (El nombre de la carpeta se almacena en el 33. Elemento Nombre de carpeta.)
A continuación, la directiva Resume proporciona la ruta Folder como salida para el módulo con error. Tenga en cuenta que el ID de carpeta se ha dejado en blanco, ya que el módulo Cargar un archivo no lo necesita.
Anidado
Las rutas de controladores de errores se pueden crear y configurar en todos los módulos, excepto en los enrutadores. Por lo tanto, puede crear una ruta de controladores de errores para un módulo que ya forme parte de una ruta de controladores de errores existente.
Ejemplo:
Una ruta de controladores de error anidada con filtros:
En este escenario, la segunda ruta del controlador de errores está anidada en la primera ruta del controlador de errores.
Si el módulo Dropbox > Crear una carpeta encuentra un error, la ejecución se mueve a la primera ruta. Si se pasa el filtro DataError Takes Place
, se ejecuta el siguiente módulo, seguido del módulo de directiva Resume si no se produce un error en Dropbox > Enumerar todos los archivos/subcarpetas de un módulo de carpetas.
Sin embargo, si se produce un error en Dropbox > Enumerar todos los archivos/subcarpetas en un módulo de carpetas, la ejecución se mueve a la Ruta 2 del controlador de errores y termina con la directiva Ignore. El módulo Reanudar directiva no se ejecuta en este caso.