Desarrollo y ampliación de flujos de trabajo

AEM proporciona varias herramientas y recursos para crear modelos de flujo de trabajo, desarrollar pasos de flujo de trabajo e interactuar mediante programación con flujos de trabajo.

Los flujos de trabajo le permiten automatizar procesos para administrar recursos y publicar contenido en su entorno AEM. Los flujos de trabajo se componen de una serie de pasos, en los que cada paso lleva a cabo una tarea discreta. Puede utilizar datos lógicos y de tiempo de ejecución para tomar decisiones sobre cuándo puede continuar un proceso y seleccionar el siguiente paso de uno de los varios pasos posibles.

Por ejemplo, los procesos empresariales para crear y publicar páginas web incluyen tareas de aprobación y de cierre de sesión realizadas por varios participantes. Estos procesos se pueden modelar con flujos de trabajo de AEM y aplicar a contenido específico.

A continuación se explican los aspectos clave, mientras que en las páginas siguientes se explican más detalles:

Nota

Para obtener información sobre:

Modelo

Una WorkflowModel representa una definición (modelo) de un flujo de trabajo. Está hecho de WorkflowNodes y WorkflowTransitions. Las transiciones conectan los nodos y definen el flujo. El modelo siempre tiene un nodo de inicio y un nodo final.

Modelo de tiempo de ejecución

Los modelos de flujo de trabajo tienen versiones. Cuando ejecute una instancia de flujo de trabajo, utilizará (y mantendrá) el modelo de tiempo de ejecución del flujo de trabajo (tal como está disponible en el momento en que se inició el flujo de trabajo).

Se genera un modelo de tiempo de ejecución cuando se activa la sincronización en el editorde modelos de flujo de trabajo.

Las ediciones al modelo de flujo de trabajo que se producen y/o los modelos de tiempo de ejecución que se generan después de que se inició la instancia específica no se aplicarán a esa instancia.

PRECAUCIÓN

Los pasos realizados son los definidos por el modelo detiempo de ejecución; esto se genera en el momento en que se activa la acción de sincronización en el editor de modelos de flujo de trabajo.

Si el modelo de flujo de trabajo se cambia después de este momento (sin activar la sincronización ), la instancia de tiempo de ejecución no reflejará esos cambios. Solo los modelos de tiempo de ejecución generados después de la actualización reflejarán los cambios. Las excepciones son las secuencias de comandos de ECMA subyacentes, que sólo se conservan una vez que se realizan los cambios.

Etapa

Cada paso lleva a cabo una tarea discreta. Existen diferentes tipos de pasos de flujo de trabajo:

  • Participante (usuario/grupo): Estos pasos generan un elemento de trabajo y lo asignan a un usuario o grupo. Un usuario debe completar el elemento de trabajo para avanzar en el flujo de trabajo.
  • Proceso (secuencia de comandos, llamada al método Java): El sistema ejecuta automáticamente estos pasos. Una secuencia de comandos ECMA o una clase Java implementa el paso. Los servicios se pueden desarrollar para escuchar eventos de flujo de trabajo especiales y realizar tareas según la lógica empresarial.
  • Contenedor (Subflujo de trabajo): Este tipo de paso inicia otro modelo de flujo de trabajo.
  • O Dividir/Unir: Utilice la lógica para decidir qué paso ejecutar después en el flujo de trabajo.
  • Y dividir/unir: Permite ejecutar varios pasos simultáneamente.

Todos los pasos comparten las siguientes propiedades comunes: Autoadvance y Timeout alertas (script).

Transición

Un WorkflowTransition representa una transición entre dos WorkflowNodes de un WorkflowModel.

  • Define el vínculo entre dos pasos consecutivos.
  • Es posible aplicar reglas.

WorkItem

A WorkItem es la unidad que pasa por una Workflow instancia de una WorkflowModel. Contiene el WorkflowData objeto en el que actúa la instancia y una referencia al WorkflowNode que describe el paso subyacente del flujo de trabajo.

  • Se utiliza para identificar la tarea y se coloca en la bandeja de entrada correspondiente.
  • Una instancia de flujo de trabajo puede tener una o varias WorkItems al mismo tiempo (según el modelo de flujo de trabajo).
  • La WorkItem hace referencia a la instancia de workflow.
  • En el repositorio, WorkItem se almacena debajo de la instancia de flujo de trabajo.

Carga útil

Hace referencia al recurso que se debe avanzar a través de un flujo de trabajo.

La implementación de carga útil hace referencia a un recurso del repositorio (por ruta, UUID o URL) o por un objeto Java serializado. Hacer referencia a un recurso en el repositorio es muy flexible y en conjunto con sling muy productivo; por ejemplo, el nodo al que se hace referencia se puede representar como un formulario.

Ciclo de vida

Se crea al iniciar un nuevo flujo de trabajo (eligiendo el modelo de flujo de trabajo correspondiente y definiendo la carga útil) y finaliza cuando se procesa el nodo final.

Las siguientes acciones son posibles en una instancia de flujo de trabajo:

  • Terminar
  • Suspender
  • Reanudar
  • Reiniciar

Las instancias completadas y terminadas se archivan.

Bandeja de entrada

Cada cuenta de usuario tiene su propia bandeja de entrada de flujo de trabajo en la que WorkItems se puede acceder a las cuentas asignadas.

Los WorkItems se asignan directamente a la cuenta de usuario o al grupo al que pertenecen.

Tipos de flujo de trabajo

Existen varios tipos de flujo de trabajo, como se indica en la consola Modelos de flujo de trabajo:

wf-upgrade-03

  • Valor predeterminado

    Estos son los flujos de trabajo integrados que se incluyen en una instancia estándar de AEM.

  • Flujos de trabajo personalizados (sin indicador en la consola)

    Son flujos de trabajo que se han creado como nuevos o a partir de flujos de trabajo integrados que se han superpuesto con personalizaciones.

  • Heredado

    Flujos de trabajo creados en una versión anterior de AEM. Estos se pueden conservar durante una actualización o exportar como paquete de workflow desde la versión anterior y luego importar a la nueva versión.

Flujos de trabajo transitorios

Los flujos de trabajo estándar guardan la información del tiempo de ejecución (historial) durante su ejecución. También puede definir un modelo de flujo de trabajo como transitorio para evitar que dicho historial se mantenga. Se utiliza para ajustar el rendimiento, ya que ahorra/evita el tiempo/recursos utilizados para mantener la información.

Los flujos de trabajo transitorios pueden utilizarse para cualquier flujo de trabajo que:

  • se ejecutan con frecuencia.
  • no necesita el historial de flujo de trabajo.

Se introdujeron flujos de trabajo transitorios para cargar un gran número de recursos, donde la información de los recursos es importante, pero no el historial de tiempo de ejecución del flujo de trabajo.

Nota

Consulte Creación de un flujo de trabajo transitorio para obtener más información.

PRECAUCIÓN

Cuando un modelo de flujo de trabajo se marca como transitorio, hay algunos escenarios en los que la información del tiempo de ejecución se mantendrá:

  • El tipo de carga útil (por ejemplo, vídeo) requiere pasos externos para el procesamiento; en estos casos, el historial de tiempo de ejecución es necesario para la confirmación del estado.
  • El flujo de trabajo entra en una división AND; en estos casos, el historial de tiempo de ejecución es necesario para la confirmación del estado.
  • Cuando el flujo de trabajo transitorio entra en el paso de un participante, cambia el modo (en tiempo de ejecución) a no transitorio; a medida que la tarea se pasa a una persona, el historial debe persistir
PRECAUCIÓN

Dentro de un flujo de trabajo transitorio no debe utilizar un paso Goto.

Esto sucede cuando Goto Step crea un trabajo de sling para continuar el flujo de trabajo en el goto punto. Esto frustra el propósito de hacer que el flujo de trabajo sea transitorio y genera un error en el archivo de registro.

Para tomar decisiones en un flujo de trabajo transitorio, puede utilizar el OR Split.

Nota

Consulte Prácticas recomendadas para recursos para obtener más información sobre el impacto de los flujos de trabajo transitorios en el rendimiento de los recursos.

Compatibilidad con varios recursos

Al activar la compatibilidad con ​varios recursos para el modelo de flujo de trabajo, se iniciará una única instancia de flujo de trabajo, incluso cuando se seleccionen varios recursos; se adjuntarán como paquete.

Si la compatibilidad con ​varios recursos no está activada para el modelo de flujo de trabajo y se seleccionan varios recursos, se iniciará una instancia de flujo de trabajo individual para cada recurso.

Nota

Consulte Configuración de un flujo de trabajo para la compatibilidad con varios recursos para obtener más información.

Etapas del flujo de trabajo

Las fases de flujo de trabajo ayudan a visualizar el progreso de un flujo de trabajo al administrar tareas. Se pueden utilizar para proporcionar una visión general de hasta dónde está el flujo de trabajo a través del procesamiento, ya que cuando se ejecuta el flujo de trabajo, el usuario puede ver el progreso descrito por etapa (en lugar de un paso individual).

Dado que los nombres de los pasos individuales pueden ser específicos y técnicos, los nombres de las etapas se pueden definir para proporcionar una vista conceptual del progreso del flujo de trabajo.

Por ejemplo, para un flujo de trabajo con seis pasos y cuatro etapas:

  1. Puede configurar las fases del flujo de trabajo (que muestran el progreso del flujo de trabajo) y, a continuación, asignar la etapa adecuada a cada paso del flujo de trabajo:

    • Se pueden crear varios nombres de etapa.
    • A continuación, se asigna un nombre de escenario individual a cada paso (se puede asignar un nombre de escenario a uno o varios pasos).
    Nombre del paso Etapa (asignada al paso)
    Etapa 1 Crear
    Etapa 2 Crear
    Etapa 3 Crítica
    Etapa 4 Aprobar
    Etapa 5 Completar
    Etapa 6 Completar
  2. Cuando se ejecuta el flujo de trabajo, el usuario puede ver el progreso según los nombres de las etapas (en lugar de los nombres de los pasos). El progreso del flujo de trabajo se mostrará en la ficha INFORMACIÓN DEL FLUJO DE TRABAJO de la ventana de detalles de la tarea del elemento de trabajo que aparece en la Bandeja de entrada.

Flujos de trabajo y formularios

Normalmente, los flujos de trabajo se utilizan para procesar envíos de formularios en AEM. Esto puede suceder con los componentes principales de los componentes de formulario disponibles en una instancia estándar de AEM o con la solución AEM Forms.

Al crear un nuevo formulario, el envío del formulario se puede asociar fácilmente con un modelo de flujo de trabajo; por ejemplo, almacenar el contenido en una ubicación concreta del repositorio o notificar al usuario el envío del formulario y su contenido.

Flujos de trabajo y traducción

Los flujos de trabajo también forman parte integrante del proceso de traducción .

En esta página