Desenvolvimento e extensão de workflows developing-and-extending-workflows

CAUTION
AEM 6.4 chegou ao fim do suporte estendido e esta documentação não é mais atualizada. Para obter mais detalhes, consulte nossa períodos de assistência técnica. Encontre as versões compatíveis here.

O AEM fornece várias ferramentas e recursos para criar modelos de fluxo de trabalho, desenvolver etapas de fluxo de trabalho e interagir programaticamente com fluxos de trabalho.

Os workflows permitem automatizar processos para gerenciar recursos e publicar conteúdo no ambiente de AEM. Os workflows são compostos de uma série de etapas, com cada etapa realizando uma tarefa discreta. Você pode usar dados de lógica e tempo de execução para tomar decisões sobre quando um processo pode continuar e selecionar a próxima etapa de uma das várias etapas possíveis.

Por exemplo, os processos de negócios para criar e publicar páginas da Web incluem tarefas de aprovação e aprovação por vários participantes. Esses processos podem ser modelados usando fluxos de trabalho AEM e aplicados a conteúdo específico.

Os principais aspectos são abordados abaixo, enquanto as seguintes páginas cobrem mais detalhes:

NOTE
Para obter informações sobre:

Modelo model

A WorkflowModel representa uma definição (modelo) de um fluxo de trabalho. É feito de WorkflowNodes e WorkflowTransitions. As transições conectam os nós e definem o fluxo. O Modelo sempre tem um nó inicial e um nó final.

Modelo de tempo de execução runtime-model

Os modelos de fluxo de trabalho têm controle de versão. Ao executar uma instância de workflow, ele usará (e manterá) o modelo de tempo de execução do workflow (conforme disponível no momento em que o workflow foi iniciado).

Um modelo de tempo de execução é gerado quando Sincronizar é acionado no editor de modelo de fluxo de trabalho.

Edições no modelo de fluxo de trabalho que ocorrem e/ou modelos de tempo de execução que são gerados, after a instância específica que foi iniciada não será aplicada a essa instância.

CAUTION
As etapas executadas são as definidas pela variável modelo de tempo de execução; isso é gerado no momento da Sincronizar é acionada no editor de modelo de fluxo de trabalho.
Se o modelo de fluxo de trabalho for alterado após esse ponto no tempo (sem Sincronizar sendo acionado), a instância de tempo de execução não refletirá essas alterações. Somente os modelos de tempo de execução gerados após a atualização refletirão as alterações. As exceções são os scripts ECMA subjacentes, que são mantidos apenas uma vez, de modo que as alterações a eles são feitas.

Etapa step

Cada etapa realiza uma tarefa discreta. Existem diferentes tipos de etapas do fluxo de trabalho:

  • Participante (Usuário/Grupo): Essas etapas geram um item de trabalho e o atribuem a um usuário ou grupo. Um usuário deve concluir o item de trabalho para avançar o fluxo de trabalho.
  • Processo (Script, chamada do método Java): Essas etapas são executadas automaticamente pelo sistema. Um script ECMA ou classe Java implementa a etapa. Os serviços podem ser desenvolvidos para acompanhar eventos especiais de fluxo de trabalho e executar tarefas de acordo com a lógica comercial.
  • Container (Sub Workflow): Esse tipo de etapa inicia outro modelo de fluxo de trabalho.
  • OU Dividir/Associar: Use a lógica para decidir qual etapa executar em seguida no fluxo de trabalho.
  • AND Split/Join: Permite que várias etapas sejam executadas simultaneamente.

Todas as etapas compartilham as seguintes propriedades comuns: Autoadvance e Timeout alertas (com script).

Transição transition

A WorkflowTransition representa uma transição entre dois WorkflowNodes de WorkflowModel.

  • Ele define o link entre duas etapas consecutivas.
  • É possível aplicar regras.

Item de trabalho workitem

A WorkItem é a unidade que passa através de um Workflow instância de um WorkflowModel. Ele contém a variável WorkflowData que a instância atua e uma referência à WorkflowNode que descreve a etapa do fluxo de trabalho subjacente.

  • Ele é usado para identificar a tarefa e é colocado na respectiva caixa de entrada.
  • Uma instância de fluxo de trabalho pode ter uma ou várias WorkItems ao mesmo tempo (dependendo do modelo de workflow).
  • O WorkItem faz referência à instância do fluxo de trabalho.
  • No repositório, a variável WorkItem é armazenado abaixo da instância de workflow.

Carga payload

Faz referência ao recurso que deve ser avançado por meio de um workflow.

A implementação de carga faz referência a um recurso no repositório (por caminho, UUID ou URL) ou por um objeto java serializado. A referência a um recurso no repositório é muito flexível e em conjunto com o sling muito produtivo; por exemplo, o nó referenciado pode ser renderizado como um formulário.

Vida útil lifecycle

É criado ao iniciar um novo workflow (escolhendo o respectivo modelo de workflow e definindo a carga) e termina quando o nó final é processado.

As seguintes ações são possíveis em uma instância de workflow:

  • Finalizar
  • Suspender
  • Retomar
  • Reiniciar

As instâncias concluídas e terminadas são arquivadas.

Caixa de entrada inbox

Cada conta de usuário tem sua própria caixa de entrada de fluxo de trabalho na qual o WorkItems são acessíveis.

O WorkItems são atribuídos à conta de usuário diretamente ou ao grupo ao qual pertencem.

Tipos de fluxo de trabalho workflow-types

Há vários tipos de fluxo de trabalho, conforme indicado no console Modelos de fluxo de trabalho :

wf-upgrade-03

  • Padrão

    Esses são os workflows prontos incluídos em uma instância de AEM padrão.

  • Fluxos de trabalho personalizados (nenhum indicador no console)

    Esses são workflows que foram criados como novos ou de workflows prontos que foram sobrepostos com personalizações.

  • Legado

    Fluxos de trabalho criados em uma versão anterior do AEM. Elas podem ser retidas durante uma atualização ou exportadas como um pacote de fluxo de trabalho da versão anterior e, em seguida, importadas para a nova versão.

Workflows transitórios transient-workflows

Os workflows padrão salvam informações de tempo de execução (histórico) durante a execução. Você também pode definir um modelo de workflow como Transitório para evitar a persistência de tal história. Isso é usado para ajuste de desempenho, pois salva/evita o tempo/recursos usados para persistir as informações.

Fluxos de trabalho transitórios podem ser usados para qualquer fluxo de trabalho que:

  • são executados com frequência.
  • não precisam do histórico do workflow.

Fluxos de trabalho transitórios foram introduzidos para carregar um grande número de ativos, onde as informações do ativo são importantes, mas não o histórico de tempo de execução do fluxo de trabalho.

NOTE
Consulte Criação de um fluxo de trabalho transitório para obter mais detalhes.
CAUTION
Quando um modelo de fluxo de trabalho é sinalizado como Transitório, há alguns cenários em que as informações de tempo de execução ainda serão mantidas:
  • O tipo de carga (por exemplo, vídeo) requer etapas externas para processamento; nesses casos, o histórico do tempo de execução é necessário para a confirmação do status.
  • O workflow insere um E dividir; nesses casos, o histórico do tempo de execução é necessário para a confirmação do status.
  • Quando o fluxo de trabalho transitório entra em uma etapa do participante, ele muda o modo (no tempo de execução) para não transitório; como a tarefa está sendo passada para uma pessoa, o histórico precisa ser mantido
CAUTION
Em um fluxo de trabalho transitório, você não deve usar um Etapa Ir para.
Isso é como o Etapa Ir para cria um sling job para continuar o workflow no goto ponto. Isso elimina a finalidade de tornar o workflow transitório e gera um erro no arquivo de log.
Para tomar decisões em um fluxo de trabalho transitório, você pode usar o OU Dividir.
NOTE
Consulte Práticas recomendadas para ativos para obter mais informações sobre como os fluxos de trabalho transitórios afetam o desempenho dos ativos.

Suporte a vários recursos multi-resource-support

Ativando Suporte a vários recursos para seu modelo de fluxo de trabalho significa que uma única instância de fluxo de trabalho será iniciada mesmo quando você selecionar vários recursos; eles serão anexados como um pacote.

If Suporte a vários recursos não estiver ativada para o modelo de fluxo de trabalho e vários recursos estiverem selecionados, uma instância de fluxo de trabalho individual será iniciada para cada recurso.

NOTE
Consulte Configurar um fluxo de trabalho para suporte a vários recursos para obter mais detalhes.

Estágios do Fluxo de Trabalho workflow-stages

As Etapas do fluxo de trabalho ajudam a visualizar o progresso de um fluxo de trabalho ao manipular tarefas. Eles podem ser usados para fornecer uma visão geral de até que ponto o fluxo de trabalho está por meio do processamento, como quando o fluxo de trabalho é executado, o usuário pode visualizar o progresso descrito por Fase (em vez de etapas individuais).

Como os nomes de etapas individuais podem ser específicos e técnicos, os nomes de etapas podem ser definidos para fornecer uma visão conceitual do progresso do fluxo de trabalho.

Por exemplo, para um fluxo de trabalho com seis etapas e quatro etapas:

  1. Você pode configure os Estágios do Fluxo de Trabalho (que mostram o Progresso do Fluxo de Trabalho) e atribua o estágio apropriado a cada etapa do fluxo de trabalho:

    • Vários nomes de palco podem ser criados.
    • Em seguida, um nome de estágio individual é atribuído a cada etapa (um nome de estágio pode ser atribuído a uma ou mais etapas).
    table 0-row-2 1-row-2 2-row-2 3-row-2 4-row-2 5-row-2 6-row-2
    Nome da etapa Estágio (atribuído à etapa)
    Etapa 1 Criar
    Etapa 2 Criar
    Etapa 3 Análise
    Etapa 4 Aprovar
    Etapa 5 Concluir
    Etapa 6 Concluir
  2. Quando o fluxo de trabalho é executado, o usuário pode visualizar o progresso de acordo com os nomes do Palco (em vez dos nomes das etapas). O progresso do workflow será exibido no Guia INFORMAÇÕES DO WORKFLOW da janela de detalhes da tarefa do item de trabalho listadas no Caixa de entrada.

Fluxos de trabalho e Forms workflows-and-forms

Normalmente, os workflows são usados para processar envios de formulários no AEM. Isso pode ser feito com o componentes principais componentes do formulário disponível em uma instância AEM padrão ou com o Solução AEM Forms.

Ao criar um novo formulário, o envio do formulário pode ser facilmente associado a um modelo de fluxo de trabalho; por exemplo, para armazenar o conteúdo em um local específico do repositório ou notificar um usuário sobre o envio do formulário e seu conteúdo.

Fluxos de trabalho e tradução workflows-and-translation

Os workflows também são parte integrante do Tradução processo.

recommendation-more-help
2315f3f5-cb4a-4530-9999-30c8319c520e