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:
Para obtener información acerca de:
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.
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.
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.
Cada paso realiza una tarea discreta. Existen diferentes tipos de pasos de flujo de trabajo:
Todos los pasos comparten las siguientes propiedades comunes: Alertas Autoadvance
y Timeout
(lista de comandos).
Un WorkflowTransition
representa una transición entre dos WorkflowNodes
de un WorkflowModel
.
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.
WorkItems
al mismo tiempo (según el modelo de flujo de trabajo).WorkItem
hace referencia a la instancia de flujo de trabajo.WorkItem
se almacena debajo de la instancia de flujo de trabajo.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.
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:
Las instancias completadas y terminadas se archivan.
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.
Existen varios tipos de flujo de trabajo, como se indica en la consola Modelos de flujo de trabajo :
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.
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 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.
Consulte Creación de un flujo de trabajo transitorio para obtener más informació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á:
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.
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.
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.
Consulte Configuración de un flujo de trabajo para compatibilidad con varios recursos para obtener más información.
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:
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 |
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.
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.
Los flujos de trabajo también forman parte integral del proceso Translation.