ValidateSubflows
O validador ValidateSubflows detecta os fluxos de trabalho incluídos como subfluxos que estão inativos, excluídos ou indisponíveis como um fluxo de trabalho publicado para o usuário atual.
Resumo da validação
- Risco: um fluxo de trabalho primário que faz a transição para um subfluxo excluído trava indefinidamente, sem opções de recuperação.
- Nível de gravidade: Crítico
- Resultado válido: Válido
- Mensagem válida: Este fluxo de trabalho contém <contagem> subfluxos válidos.
- Resultado inválido: Inválido
- Mensagem inválida: Este fluxo de trabalho contém <contagem de inválidos> subfluxo(s) inválido(s) do total de <contagem total de subfluxos> subfluxos.
- Ação sugerida: remova o link no fluxo de trabalho primário para o subfluxo questionável, examine o subfluxo para garantir que ele é válido e está publicado ou que foi submetido a check-out para o usuário atual. Depois de fazer a correção no estado do subfluxo, execute a validação novamente para testar as mudanças.
- Publicável: Não
- Executável: Não
- Informações relacionadas: Fluxos de trabalho usados como subfluxos
Solução de problemas
Quando um fluxo de trabalho é executado, sem importar se ele é um subfluxo ou um fluxo principal, o mecanismo de script determina qual versão de um fluxo de trabalho deve ser executada, considerando o usuário atual e as condições do fluxo de trabalho. Quando um fluxo de trabalho é submetido a check-out pelo mesmo usuário que o está executando, a versão em check-out é a versão executada. Se o usuário não for a mesma pessoa que fez check-out do fluxo de trabalho, a versão publicada do fluxo de trabalho será executada. Se não houver fluxo de trabalho publicado, nenhum fluxo de trabalho será executado.
Um cenário abordado pelo validador ValidateSubflows é quando um fluxo de trabalho:
- Foi submetido a check-out para o Usuário A.
- É um subfluxo em um fluxo de trabalho primário que está sendo executado pelo Usuário B.
- Não tem alternativa publicada para o subfluxo que está sendo executado pelo Usuário B.
Quando isso ocorre, o fluxo de trabalho primário é executado até o subfluxo não publicado e depois trava nessa atividade, sem meios de avançar na transição. Os fluxos principais que encontram essa condição em um subfluxo não podem ser executados em uma transação do registro atual. Em vez disso, uma entrada de log crítica detalhando o estado do subfluxo é adicionada ao registro do contexto de fluxo de trabalho do fluxo atual. Para corrigir o problema, remova o subfluxo do fluxo principal ou publique o subfluxo para que ele seja disponibilizado ao Usuário B. Isso permite que o fluxo de trabalho seja executado na próxima transação apropriada.
Outro cenário abordado pelo validador ValidateSubflow é quando um fluxo de trabalho:
- É um subfluxo em um fluxo de trabalho primário que está sendo executado por qualquer usuário.
- Não tem alternativa publicada para o subfluxo, porque o fluxo de trabalho foi excluído ou todas as versões do fluxo de trabalho estão inativas ou não publicadas.