Saltar al contenido principal

Tarea Humana

Configuración actual de la tarea Human Task en el Diseñador de Flujos de Trabajo

La tarea “Tarea Humana” es un componente fundamental para la orquestración de procesos que requieren una intervención humana. Su función primaria es la de suspender la ejecución de un Workflow y crear una actividad pendiente, asignándola a uno o más usuarios específicos.

El Workflow permanecerá en estado de espera (en Registro de ejecuciones estará en estado de Running) hasta que el usuario designado complete la actividad, la anule, o hasta que expire un timeout. Esta interacción ocurre a través de la interfaz Workspace del usuario.

Esta tarea es el puente entre la automatización de sistemas (System-to-System) y los procesos de toma de decisiones o de entrada de datos humanos (Human-in-the-Loop).

1. Configuración

La configuración de la tarea define a quién asignar la actividad, sus plazos y los campos (forms) que el usuario deberá visualizar o completar.

1.1 Asignación de Usuario

  • Asignatarios: Un campo de selección múltiple para especificar uno o más usuarios a los que se asignará la actividad.
  • Fecha de Vencimiento: Un campo de fecha/hora para definir el plazo dentro del cual debe completarse la actividad.
  • Prioridad: Un menú desplegable para establecer la prioridad de la actividad (Baja, Media, Alta).
  • Timeout (segundos): Un valor numérico, en segundos, que define un tiempo máximo de espera. Si la actividad no se completa dentro de este timeout, el Workflow retomará automáticamente la ejecución, típicamente siguiendo un camino de salida específico.

1.2 Forms (Módulos)

Esta sección permite construir un módulo dinámico que se presentará al usuario en su Workspace. Para cada campo que se visualice (+ para agregar), se definen:

ColumnaDescripción Técnica
LabelEl nombre del campo, tal como se mostrará al usuario (ej. test_pdf).
TipoEl tipo de dato del campo (ej. String, Number, Boolean).
ValorEl valor inicial o pre-completado del campo. Puede ser un valor estático o, más comúnmente, un parámetro dinámico proveniente de una tarea anterior (#>Importa Testo.result<#).
RequiredSi se marca, el usuario no podrá completar la actividad sin haber completado este campo.
Read-OnlySi se marca, el usuario podrá visualizar el valor del campo pero no modificarlo.

2. Interacción del Usuario en el Workspace

Cuando un Workflow en ejecución alcanza una Tarea Humana, ocurre lo siguiente:

  1. La ejecución del Workflow se suspende.
  2. En la interfaz Workspace de los usuarios asignados aparece una nueva actividad pendiente en la sección “Lista de Tareas Humanas”.
  3. La actividad muestra todos los detalles configurados: asignatarios, prioridad, fecha de vencimiento, y el módulo (Forms) que se debe completar.
  4. El usuario puede interactuar con la actividad completando los campos requeridos y eligiendo una de las dos acciones finales:
  • Completar: Completa la actividad y hace retomar el Workflow.
  • Cancelar: Cancela la actividad y hace retomar el Workflow, típicamente siguiendo un camino de salida diferente.

3. Parámetros de Salida

Una vez que la Tarea Humana ha sido completada, expone una serie de parámetros de salida que contienen los datos ingresados por el usuario y el resultado de su interacción.

Estos parámetros son fundamentales para las Tareas siguientes, que podrán utilizar los datos validados o introducidos por el usuario para continuar con la lógica del proceso (por ejemplo, guardar los datos en una base de datos, enviar un correo electrónico con la información introducida, etc.).

3.1 Sección Base

  • result: El estado final de la interacción (por ejemplo, "Completado", "Cancelado", "Expirado").
  • resultJSON: Un objeto JSON que contiene todos los datos del formulario, incluidos los valores introducidos por el usuario.
  • choicesJSON: Un objeto JSON que recopila las opciones realizadas por el usuario, el estado de finalización y el usuario asociado. (por ejemplo, {"choices":{"x":"243"},"status":"Completed","username":"user_test"})

3.2 Sección Formularios

Esta sección expone cada campo definido en el formulario Formularios como un parámetro de salida individual, haciendo que el acceso a los datos introducidos por el usuario sea extremadamente directo.

La asignación sigue esta estructura:

  • Nombre del Campo (Etiqueta): Para cada campo creado con una determinada Etiqueta en la configuración, se crea un parámetro de salida con el mismo nombre. Este parámetro contendrá el valor final del campo, tal como ha sido eventualmente modificado y confirmado por el usuario en el momento de la finalización de la tarea.