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 permiten automatizar procesos para administrar recursos y publicar contenido en el entorno de AEM. Los flujos de trabajo constan de una serie de pasos, y cada paso realiza una tarea discreta. Puede utilizar la lógica y los datos de tiempo de ejecución para tomar decisiones sobre cuándo puede continuar un proceso y seleccionar el siguiente paso de uno de los múltiples pasos posibles.

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

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

NOTA

Para obtener información acerca de:

Modelo

Un WorkflowModel representa una definición (modelo) de un flujo de trabajo. Está hecha 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 (como disponible en el momento en que se inició el flujo de trabajo).

Se genera un modelo de tiempo de ejecución cuando Sync se activa en el editor de 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 haya iniciado la instancia específica no se aplicarán a esa instancia.

PRECAUCIÓN

Los pasos realizados son los definidos por el modelo de tiempo de ejecución; esto se genera cuando se activa la acción Sync en el editor del modelo de flujo de trabajo.

Si el modelo de flujo de trabajo se cambia después de este punto en el tiempo (sin activar Sync), 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 los scripts ECMA subyacentes, que se mantienen solo una vez que se realizan cambios en ellos.

Etapa

Cada paso realiza 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 (Script, llamada de método Java): El sistema ejecuta automáticamente estos pasos. Una secuencia de comandos ECMA o una clase Java implementan 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 a continuación en el flujo de trabajo.
  • Y Dividir/Unir: Permite ejecutar varios pasos simultáneamente.

Todos los pasos comparten las siguientes propiedades comunes: Alertas Autoadvance y Timeout (lista de comandos).

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

Un WorkItem es la unidad que pasa a través de una instancia Workflow de un WorkflowModel. Contiene el WorkflowData en el que la instancia actúa 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).
  • El WorkItem hace referencia a la instancia de flujo de trabajo.
  • En el repositorio, el WorkItem se almacena debajo de la instancia de flujo de trabajo.

Carga útil

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

La implementación de carga útil hace referencia a un recurso en el repositorio (por ruta, UUID o URL) o por un objeto java serializado. Hacer referencia a un recurso en el repositorio es muy flexible y junto con sling es 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 se puede acceder a la WorkItems asignada.

Los WorkItems se asignan a la cuenta de usuario directamente 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

  • Predeterminado

    Estos son los flujos de trabajo listos para usar incluidos en una instancia de AEM estándar.

  • 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 listos para usar que se han superpuesto con personalizaciones.

  • Heredado

    Flujos de trabajo creados en una versión anterior de AEM. Se pueden conservar durante una actualización o exportar como paquete de flujo de trabajo desde la versión anterior y luego importarlos a la nueva versión.

Flujos de trabajo transitorios

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

Los flujos de trabajo transitorios se pueden utilizar para cualquier flujo de trabajo que:

  • se ejecutan a menudo.
  • no necesitan el historial del 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 ha marcado como transitorio, existen algunos escenarios en los que la información de 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 introduce una AND Split; 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 un paso del participante, cambia de modo (durante la ejecución) a no transitorio; como la tarea se pasa a una persona, el historial debe conservarse
PRECAUCIÓN

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

Esto sucede cuando el Goto Step crea un trabajo de sling para continuar con el flujo de trabajo en el punto goto. Esto impide 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 OR Split.

NOTA

Consulte Prácticas recomendadas para recursos para obtener más información sobre cómo afectan los flujos de trabajo transitorios al rendimiento de los recursos.

Compatibilidad con varios recursos

Activar Compatibilidad con varios recursos para el modelo de flujo de trabajo significa que se iniciará una sola instancia de flujo de trabajo incluso cuando seleccione varios recursos; se adjuntarán como paquete.

Si 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.

Etapas del flujo de trabajo

Las etapas del flujo de trabajo ayudan a visualizar el progreso de un flujo de trabajo al administrar tareas. Se pueden utilizar para proporcionar una descripción general de hasta dónde llega 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 Stage (en lugar de los pasos individuales).

Como los nombres de paso individuales pueden ser específicos y técnicos, los nombres de escenario 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 etapas del flujo de trabajo (que muestran el progreso del flujo de trabajo) y luego asignar la etapa adecuada a cada paso del flujo de trabajo:

    • Se pueden crear varios nombres de escenario.
    • 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 fases (en lugar de los nombres de las etapas). El progreso del flujo de trabajo se muestra en la pestaña WORKFLOW INFO de la ventana de detalles de la tarea del elemento de trabajo que aparece en la Inbox.

Flujos de trabajo y Forms

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

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

Flujos de trabajo y traducción

Los flujos de trabajo también forman parte integral del proceso Translation.

En esta página