Exemplos de cenários de regras personalizadas

Serviços de DevOps do Azure | Azure DevOps Server 2022 - Azure DevOps Server 2019

Este artigo fornece exemplos de definições de regras personalizadas. Todas as regras personalizadas são definidas para um tipo de item de trabalho. São fornecidos exemplos para os modelos de processo XML Herdados e No Local.

Antes de adicionar regras personalizadas, leia Avaliação de regras e regras e Adicionar uma regra a um tipo de item de trabalho (Processo de herança).

Definir um campo obrigatório dependente

Você pode especificar que um campo é obrigatório somente quando outro campo contém um valor específico. No exemplo a seguir, quando um cliente relata um problema, o campo personalizado Relatado pelo Cliente é definido como Verdadeiro e o campo Severidadese torna necessário. Se o problema não for relatado por um cliente, um valor para o campo Severidade não será necessário.

Captura de tela da regra personalizada para tornar a Severidade necessária quando o campo Customer REported = true.

Limpar o valor de um campo dependente

O exemplo a seguir ilustra a definição de uma regra personalizada para limpar o valor de Pontos de História quando uma alteração é feita na Data de Início.

Captura de ecrã da regra personalizada para limpar o valor dos Pontos de História quando a Data de Início é alterada.

Definir um valor de campo dependente

Os exemplos a seguir ilustram como mapear os valores do campo Tamanho dependendo do valor selecionado para o campo personalizado, campo Tamanho da camisa.

A lista de opções do tamanho da camiseta consiste em quatro valores : Pequeno, Médio, Grande e X-Grande. Quatro regras personalizadas são definidas para atribuir o campo Tamanho quando o campo Tamanho da camiseta é alterado para um valor específico. Para simplificar o uso, o valor padrão do tamanho da camiseta é Pequeno.

Caixa de diálogo Editar campo para o campo Tamanho da camiseta

Captura de ecrã da caixa de diálogo Editar campo para o campo Tamanho da Tee-shirt.

Regra personalizada

Captura de ecrã da regra personalizada para definir o valor Tamanho quando Tamanho da Tee-Shirt estiver definido como Pequeno.

Quatro regras personalizadas

Captura de ecrã de quatro regras personalizadas para definir o valor Tamanho quando o Tamanho da Tee-Shirt está definido.

Exigir um valor de campo em caso de alterações de Estado

O exemplo a seguir mostra como você pode exigir a especificação do campo Trabalho Restante quando o Estado do fluxo de trabalho da tarefa muda para Ativo.

Captura de tela da regra personalizada para tornar o Trabalho Restante necessário quando o Estado é alterado para Ativo.

Limpar o valor de um campo ao fechar o estado

Para automatizar a limpeza do campo Trabalho Restante ao fechar uma tarefa, defina uma regra personalizada conforme indicado.

Captura de ecrã da regra personalizada para eliminar o Trabalho Restante necessário quando o Estado é alterado para Fechado.

Restringir a criação de itens de trabalho a um grupo

Uma regra personalizada que restringe a transição para a categoria de estado Proposto de um tipo de item de trabalho efetivamente não permite a criação de itens de trabalho desse tipo. Ao aplicar a regra a um grupo específico, você efetivamente impede que esse grupo crie itens de trabalho desse tipo.

A regra personalizada a seguir restringe uma equipe de projeto de criar itens de trabalho à medida que a categoria de estado Proposto é mapeada para o estado Novo fluxo de trabalho.

Captura de ecrã da regra personalizada para restringir a criação de um item de trabalho por um grupo.

Restringir a modificação de itens de trabalho a um grupo

Para um processo de Herança, você pode impedir que os usuários modifiquem um item de trabalho definindo a permissão de negação para um grupo em um Caminho de Área. Para um processo XML local, você pode colocar restrições em cada estado do fluxo de trabalho para um grupo que os impede de salvar o item de trabalho em qualquer estado.

Não é possível definir uma regra personalizada que restrinja a modificação de itens de trabalho de um tipo específico. Você só pode especificar a restrição por estado. Se o usuário não alterar o estado, ele poderá modificar outros campos, a menos que todos os campos sejam tornados somente leitura para o grupo.

Em vez disso, se você quiser restringir um grupo de usuários de modificar itens de trabalho selecionados de qualquer tipo, você pode atribuir esses itens de trabalho a um caminho de área. Defina um grupo de segurança e, em seguida, defina restrições para editar itens de trabalho para esse Caminho de Área para esse grupo, conforme mostrado na imagem a seguir. Para saber mais, consulte Definir permissões e acesso para acompanhamento de trabalho, Criar nós filho e modificar itens de trabalho em um caminho de área

Captura de ecrã da caixa de diálogo Permissões para um Caminho de Área para restringir modificações de itens de trabalho.

Restringir transições de estado

Para processos herdados, as transições de qualquer estado para qualquer estado são definidas automaticamente. Isso permite que os usuários avancem o estado do fluxo de trabalho de novo para concluído, mas também retrocedam caso seja necessário. Ao definir regras personalizadas para restringir uma transição, lembre-se de que, se um usuário cometer um erro ao atualizar o fluxo de trabalho, talvez não consiga corrigi-lo. Por exemplo, eles podem atualizar o status movendo um cartão de item de trabalho para um estágio posterior no quadro Kanban, mas não movê-lo de volta.

Gorjeta

Considere restringir uma transição de estado para alguns, mas não para todos os usuários. Dessa forma, se um usuário cometer um erro, ele pode pedir a outro membro da equipe para redefinir o valor State para contornar a restrição.

Antes de definir regras de transição de estado, revise Regras e avaliação de regras, Regras geradas automaticamente e Como os estados e categorias de estado do fluxo de trabalho são usados em Listas de pendências e painéis.

Restringir a modificação de itens de trabalho fechados

Dependendo de seus processos de negócios, convém impedir que os usuários continuem a modificar ou atualizar itens de trabalho que foram fechados ou concluídos. Você pode adicionar regras aos tipos de item de trabalho para impedir que os usuários reabram itens de trabalho fechados.

Para o processo herdado, você pode adicionar uma regra que restrinja a transição de estado. Por exemplo, a regra a seguir restringe a transição de fechado para os outros dois Estados, Novo e Ativo.

Nota

A A work item state moved from ... condição está disponível para o Azure DevOps Server 2020 e versões posteriores.

Regra personalizada, o usuário atual não é membro de um grupo, não permite transições para o estado Novo ou Ativo de Fechado

Nota

Dependendo da ação de regra especificada, o botão Salvar no formulário de item de trabalho pode ser desabilitado ou uma mensagem de erro é exibida quando um usuário restrito tenta modificar o item de trabalho.

Ocultar ou restringir a modificação de um campo com base num utilizador ou grupo

Ao selecionar o Current user is a member of group... ou Current user is not a member of group..., você pode ocultar um campo, tornar um campo somente leitura ou tornar um campo obrigatório.

Por exemplo, a condição a seguir indica que o campo Justificação está oculto para membros que não pertencem ao grupo Fiber\Voice da Fabrikam.

Regra personalizada, O utilizador atual não é membro de um grupo, campo Ocultar justificação

Nota

Os itens de trabalho estão sujeitos a regras aplicadas a eles. As regras condicionais baseadas na associação de usuário ou grupo são armazenadas em cache para seu navegador da Web. Se você estiver restrito a atualizar um item de trabalho, talvez tenha encontrado uma dessas regras. Se você acredita ter encontrado um problema que não se aplica a você, consulte Problemas de cache do IndexDB do formulário de item de trabalho.

Restringir a modificação de campos selecionados com base num utilizador ou grupo

Você pode personalizar tipos de item de trabalho para restringir quem pode modificar um campo específico para um tipo de item de trabalho.

Nota

Para o Azure DevOps Server 2019 e versões anteriores, você só pode restringir a modificação de itens de trabalho com base em um usuário ou grupo com o modelo de processo XML local.

Usando uma das duas condições a seguir, você pode selecionar campos obrigatórios para um usuário de um grupo de segurança ou que não seja membro de um grupo de segurança.

  • current user is a member of a group...
  • current user is not a member of a group...

Gorjeta

Para evitar problemas de avaliação de regras que possam surgir, especifique os grupos de segurança do Azure DevOps e não os grupos de segurança do Microsoft Entra ID ou do Ative Directory. Para saber mais, consulte Regras padrão e o mecanismo de regras.

Por exemplo, você pode tornar os campos Título ou Estado somente leitura para usuários ou grupos selecionados.

Por exemplo, o campo Prioridade , para o tipo de item de trabalho User Story, torna-se somente leitura para membros do grupo Fiber\Voice da Fabrikam. Quando um usuário desse grupo abre uma História de Usuário, ele não consegue alterar o valor no campo Prioridade.

Regra personalizada, o usuário atual não é membro de um grupo, torne o campo Prioridade somente leitura