Habilite JavaScript para visualizar esta página.

Altova FlowForce Server 2020 Advanced Edition

Cuando un paso de un trabajo da lugar a error, el trabajo también se considera fallido. Para realizar algunas acciones de limpieza antes de que finalice el trabajo (como registrar el error o enviar notificaciones por correo electrónico), puede crear identificadores de error/operación correcta. Estos identificadores sirven para proteger la ejecución de uno o varios pasos del trabajo, lo que denominamos bloques protegidos. En el esquema que aparece a continuación puede ver la estructura de un bloque protegido.

 

ProtectedBlock

Estructura de un bloque protegido

Cuando uno de los pasos del bloque protegido dé lugar a error, los controladores de errores deciden qué ocurre antes de que termine el trabajo. Estos controladores de errores pueden ser de varios tipos:

 

Cuando la operación funcione correctamente ejecuta cierta acción si todos los pasos del bloque finalizan correctamente

Cuando haya errores ejecuta cierta acción si uno de los pasos del bloque protegido da lugar a error

Al reintentar (este controlador se ejecuta solamente si la opción número de reintentos del bloque protegido tiene un valor mayor que 0; se ejecuta si cualquiera de los pasos del bloque protegido ha fallado y se va a reintentar). Para más detalles consulte más abajo "Reintentar cuando haya errores".

Siempre ejecuta cierta acción independientemente de si los pasos del bloque protegido finalizan correctamente o no

 

Cuando termina de ejecutarse el bloque protegido, FlowForce Server ejecuta los controladores definidos en función del resultado. Por ejemplo, en el esquema anterior, los pasos protegidos son el Paso A y el Paso B y la lógica de control de errores es esta:

 

Si A da lugar a error, entonces se ejecutarán A, C y E.

Si B da lugar a error, entonces se ejecutarán A, B, C y E.

Si A y B finalizan correctamente, entonces se ejecutarán A, B, D y E.

 

En la práctica no es necesario definir los tres tipos de controladores por cada trabajo (aunque si quiere puede hacerlo). Lo más común es definir solamente los controladores Cuando haya errores y Siempre. Por ejemplo, la imagen siguiente muestra un bloque simple protegido con controladores de los tipos Cuando haya errores y Siempre.

fs_protected_block_01

El primer paso ejecuta un script del directorio C:\scripts. Para ello invoca la función \system\shell\commandline. La ejecución de este paso está protegida por dos controladores: Cuando haya errores y Siempre. El controlador Cuando haya errores solo se activa si falla la ejecución del primer paso. Más concretamente, si falla el primer paso, entonces el paso de control de errores envía un correo electrónico con el ID de la instancia de trabajo fallida en el asunto del mensaje. El controlador Siempre se ejecuta siempre, independientemente de si el primer paso se completó correctamente o no. Este controlador guarda un mensaje en el registro, para lo que ejecuta un script desde el directorio C:\scripts. Para ver un ejemplo más completo consulte el apartado Agregar un control de errores a un trabajo.

© 2020 Altova GmbH