Definir uma consulta de item de trabalho nos Painéis do Azure

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

Visual Studio 2019 | Visual Studio 2022

As consultas de item de trabalho geram listas de itens de trabalho com base nos critérios de filtro fornecidos por você. Você pode salvar e compartilhar essas consultas gerenciadas com outras pessoas.

Você pode criar consultas a partir do portal da Web ou de um cliente suportado, como o Visual Studio Team Explorer. Para suportar atualizações ou adições em massa, importe ou exporte consultas usando arquivos do Excel ou .csv.

Confira nossas práticas recomendadas, mais adiante neste artigo.

Pré-requisitos

  • Você deve ter acesso de partes interessadas para exibir e executar consultas compartilhadas. Todos os membros do projeto têm acesso às partes interessadas por padrão. Para obter mais informações, consulte Alterar as permissões para uma consulta ou pasta compartilhada.
  • Você deve ter acesso Básico ou superior para adicionar e salvar uma consulta compartilhada.
  • Você deve ter sua permissão Contribuir definida como Permitir para a pasta à qual deseja adicionar uma consulta. Por padrão, o grupo de Colaboradores não tem essa permissão.

Nota

Os usuários com acesso de partes interessadas para um projeto público têm acesso total aos recursos de consulta, assim como os usuários com acesso Básico . Para obter mais informações, veja Referência rápida sobre o acesso de Interveniente.

  • Por padrão, todos os membros e usuários do projeto com acesso de partes interessadas podem exibir e executar todas as consultas compartilhadas. Você pode alterar as permissões definidas para uma pasta de consulta compartilhada ou consulta compartilhada. Para obter mais informações, consulte Definir permissões de consulta.
  • Para adicionar e guardar uma consulta em Consultas partilhadas, tem de lhe ser concedido acesso Básico ou superior. Além disso, você deve ter sua permissão Contribuir definida como Permitir para a pasta à qual deseja adicionar a consulta. Por padrão, o grupo de Colaboradores não tem essa permissão.

Escolha um filtro de consulta

No Editor de Consultas, você pode selecionar o filtro para ir para um artigo com consultas de exemplo. Junto com os filtros de consulta, você pode aplicar filtros interativamente aos resultados da consulta.

Nota

As consultas gerenciadas não suportam pesquisas de proximidade, mas as pesquisas semânticas. Além disso, as pesquisas semânticas suportam caracteres curinga * e você pode usar mais de um caractere ? curinga para corresponder a mais de um caractere. Para obter mais informações, consulte Pesquisa funcional de item de trabalho.


Recursos de filtro

Macros



Você também pode filtrar interativamente uma consulta usando a função Filtro .

Consultas abertas

No seu navegador da Web, (1) verifique se você selecionou o projeto certo, (2) escolha Consultas de painéis >e, em seguida, (3) escolha Todos.

Consultas Open Boards>, navegação vertical

Se for a primeira vez que abre Consultas, a página abre para Favoritos. Esta página lista as consultas que indicou serem favoritas. Caso contrário, você pode escolher Todos para exibir todas as consultas definidas e compartilhadas definidas para o projeto.

Gorjeta

As consultas que você ou sua equipe escolheram como favoritas aparecem na página Favoritos . As consultas favoritas, juntamente com outros objetos, também aparecem na página do Projeto. Para obter mais informações, consulte Definir favoritos pessoais ou de equipe.

Definir uma consulta de lista simples

Inicie uma nova consulta a partir da guia Consultas no portal da Web ou da guia Itens de Trabalho no Team Explorer.

Selecione Nova consulta.

Captura de ecrã para Adicionar nova consulta, nova experiência.

O Editor de Consultas é exibido com as seguintes configurações padrão: Lista simples de itens de trabalho, Tipo de Item de Trabalho=[Qualquer] e Estado=[Qualquer].

Captura de ecrã do Editor de Consultas com uma lista simples de itens de trabalho selecionados.

Modifique os Valores e adicione ou remova cláusulas, ou altere o Tipo de consulta para Itens de trabalho e links diretos ou para uma Árvore de itens de trabalho.

Consulta entre ou dentro de projetos

As novas consultas definem o âmbito para o projeto atual por predefinição. Mas, você pode criar consultas para localizar itens de trabalho definidos dentro da organização ou coleção de projetos. Todas as consultas salvas, no entanto, são salvas em um projeto específico.

Para listar itens de trabalho definidos em dois ou mais projetos, marque Consulta entre projetos. Por exemplo, a consulta a seguir localiza todos os recursos criados em todos os projetos nos últimos 30 dias.

Captura de ecrã do Editor de Consultas com a opção Consulta entre projetos marcada.

Com a opção Consulta entre projetos marcada, você pode adicionar o campo Projeto de equipe para filtrar um número selecionado de projetos.

Captura de tela do Editor de Consultas com o Projeto de Equipe e outros campos adicionados ao filtro.

Nota

Separe vários nomes de projeto com o separador de lista que corresponde às configurações regionais definidas para o computador cliente, por exemplo, uma vírgula ,.

  • O campo Projeto de Equipe estará disponível somente depois que você verificar Consulta entre projetos.
  • Quando a opção Consulta entre projetos é marcada, todos os campos de todos os tipos de item de trabalho definidos em todos os projetos da coleção aparecem no menu suspenso Campo .
  • Quando a opção Consulta entre projetos está desmarcada, somente os campos desses tipos de item de trabalho, conforme definido no projeto atual, aparecem no menu suspenso Campo .

Definir uma cláusula

Para criar uma consulta, defina uma ou mais cláusulas. Cada cláusula define um critério de filtro para um único campo.

Cláusula de consulta de exemplo

E/Ou Campo Operador Value
And Atribuído a = @Me

Para obter uma lista de operadores disponíveis com base no tipo de dados de campo, consulte Referência rápida do índice de consulta.

Todas as cláusulas são adicionadas como uma instrução E . Selecione Ou para alterar o agrupamento. Cláusulas de grupo para garantir que as instruções de cláusula sejam executadas na sequência necessária.

Selecione Adicionar nova cláusula para adicionar outra cláusula no final da consulta e, em seguida, selecione Campo, Operador e Valor para essa cláusula.

Captura de ecrã do Editor de Consultas a mostrar como adicionar uma cláusula.

Por exemplo, pesquise todos os itens de trabalho atribuídos a você especificando o campo Atribuído a , o operador de igual (=) e a macro @Me , que representa sua identidade de usuário.

Gorjeta

Para exibir a sintaxe WIQL de uma consulta e como os parênteses são usados para agrupar cláusulas, instale o Editor Wiql do Marketplace. Esta extensão suporta a visualização da sintaxe WIQL e a exportação para um arquivo WIQL para uso em chamadas de API REST. Para obter mais informações, consulte Sintaxe para a linguagem de consulta de item de trabalho (WIQL).

Lista de verificação para definir uma cláusula de consulta

  1. Na primeira linha vazia, sob o título da coluna Campo , escolha a seta para baixo para exibir a lista de campos disponíveis e escolha um item na lista. Para obter mais informações, consulte Campos e valores de consulta.

  2. Na mesma linha, sob o título da coluna Operador , selecione a seta para baixo para exibir a lista de operadores disponíveis e escolha um item na lista. Para obter mais informações, consulte Operadores.

  3. Na mesma linha, sob o título da coluna Valor , insira um valor ou selecione a seta para baixo e escolha um item na lista. Para obter mais informações sobre como usar uma macro ou variável para especificar o projeto atual, usuário, data ou outra seleção, consulte Variáveis.

  4. Para adicionar uma cláusula, escolha Adicionar nova cláusula.

    Você pode adicionar uma cláusula ao final da consulta ou executar as seguintes tarefas com os ícones correspondentes:

    • Inserir nova linha de filtro
    • Remover esta linha de filtro
    • Agrupar cláusulas selecionadas
    • Desagrupar cláusulas

Usar uma árvore de item de trabalho para exibir hierarquias

Use a consulta Árvore de Itens de Trabalho para exibir uma lista aninhada de várias camadas de itens de trabalho. Por exemplo, você pode exibir todos os itens da lista de pendências e suas tarefas vinculadas. Para se concentrar em diferentes partes da árvore, escolha Expandir tudo ou Fechar tudo.

Nota

Não é possível construir uma consulta que mostre uma exibição hierárquica de Planos de Teste, Conjuntos de Testes e Casos de Teste. Esses itens não são vinculados usando tipos de link pai-filho. No entanto, você pode criar uma consulta de links diretos que lista itens de trabalho relacionados ao teste. Além disso, você pode exibir a hierarquia através da página Planos de teste.

Captura de ecrã da Lista de Resultados da Consulta a mostrar uma Consulta em Árvore.

Defina os critérios de filtro para itens de trabalho pai e filho. Para encontrar filhos vinculados, selecione Corresponder itens de trabalho de nível superior primeiro. Para encontrar pais vinculados, selecione Corresponder itens de trabalho vinculados primeiro.

Captura de ecrã da vista do Editor de Consultas da Árvore de itens de trabalho.

Use a consulta Itens de trabalho e Links diretos para controlar itens de trabalho que dependem de outro trabalho controlado, como tarefas, bugs, problemas ou recursos. Por exemplo, você pode exibir itens da lista de pendências que dependem de outros itens que estão sendo implementados ou de um bug que está sendo corrigido.

Use a consulta de links diretos para rastrear dependências entre equipes. A consulta também ajuda você a gerenciar os compromissos assumidos pela sua equipe. Escolha os critérios de filtro para os itens de trabalho superiores e vinculados. E selecione os tipos de links para filtrar as dependências.

Captura de ecrã dos resultados da consulta de ligações diretas.

Captura de ecrã do Editor de Consultas, Consulta de Ligações Diretas.

Filtre sua lista de itens de trabalho de primeira camada escolhendo uma destas opções:

  • Somente retornam itens que têm links correspondentes: os itens de trabalho de primeira camada retornam, mas somente se tiverem links para itens de trabalho especificados pelos critérios de filtro de itens de trabalho vinculados.
  • Retornar todos os itens de nível superior: Todos os itens de trabalho de primeira camada retornam apesar dos critérios de filtro de itens de trabalho vinculados. Os itens de trabalho de segunda camada vinculados à primeira camada retornarão se corresponderem aos critérios de filtro de itens de trabalho vinculados.
  • Somente itens de retorno que não têm links correspondentes: os itens de trabalho de primeira camada são retornados, mas somente se não tiverem links para itens de trabalho especificados pelos critérios de filtro de itens de trabalho vinculados.

Para obter mais informações sobre cada tipo de link, consulte Referência de tipo de link.

Utilização e/ou expressão lógica

Especifique And ou Or crie expressões lógicas de suas cláusulas de consulta. Use And para localizar itens de trabalho que atendam aos critérios da cláusula atual e da cláusula anterior. Use Or para localizar itens de trabalho que atendam ao critério na cláusula atual ou na cláusula anterior.

Adicione uma nova cláusula para cada campo de item de trabalho para refinar seus critérios de pesquisa. Adicione cláusulas para retornar apenas o conjunto de itens de trabalho desejado. Se não receber os resultados esperados da consulta, refine-a. Você pode adicionar, remover, agrupar ou desagrupar cláusulas de consulta para melhorar os resultados da consulta.

Cláusulas de consulta de grupo para operar como uma única unidade separada do resto da consulta. Agrupar cláusulas é semelhante a colocar parênteses em torno de uma expressão em uma equação matemática ou instrução lógica. Quando você agrupa cláusulas, a And ou Or para a primeira cláusula do grupo se aplica a todo o grupo.

Cláusulas de grupo

As cláusulas agrupadas operam como uma única unidade separada do resto da consulta. Agrupar cláusulas é semelhante a colocar parênteses em torno de uma equação matemática ou expressão lógica. O And operador ou Or para a primeira cláusula do grupo aplica-se a todo o grupo.

Como mostram os exemplos a seguir, as cláusulas agrupadas são traduzidas para a expressão lógica correspondente.

Query Cláusulas agrupadas Expressão lógica
1 Captura de ecrã a mostrar uma consulta de cláusula de grupo. Os filtros são configurados para o campo Tipo de item de trabalho e para o campo Estado ou para o campo Atribuído a. Captura de ecrã de uma expressão lógica. Um operador AND agrupa os campos Tipo de item de trabalho, Estado e Atribuído a. Um operador OR agrupa os campos Estado e Atribuído a.
2 Captura de tela mostrando uma consulta de cláusula de grupo, com filtros para o campo Tipo de item de trabalho e um dos campos Estado ou Atribuído a. Captura de ecrã de uma expressão lógica. Um operador AND agrupa o tipo de item Trabalho com os campos Estado ou Atribuído a, que são agrupados por um operador OR.
3 Captura de ecrã a mostrar uma consulta de cláusula de grupo. Os filtros são configurados para o campo Tipo de item de trabalho ou para o campo Estado e para o campo Atribuído a. Captura de ecrã de uma expressão lógica. Um operador OR vincula o tipo de item Trabalho aos campos Estado e Atribuído a, que são vinculados por um operador AND.

Essas consultas retornam itens de trabalho que são do tipo Bug e atendem às seguintes expressões lógicas:

  • Consulta 1: AND State=Active OR Assigned to @Me
  • Consulta 2: AND (State=Active OR Assigned to @Me)
  • Consulta 3: OR (State=Active AND Assigned to @Me)

Para agrupar uma ou mais cláusulas, selecione-as e, em seguida, selecione o ícone de cláusulas de grupo.

Captura de ecrã do portal Web, Editor de Consultas, Cláusulas de Consulta Selecionadas de Grupo.

Também é possível agrupar várias cláusulas agrupadas. Marque as caixas de cada cláusula. Em seguida, escolha o ícone de cláusulas de grupo.

Captura de ecrã do portal Web, Editor de Consultas, Agrupar várias cláusulas de consulta.

Se os resultados da consulta não retornarem os resultados esperados, execute as seguintes etapas:

  • Certifique-se de que cada cláusula está definida como pretendido.
  • Verifique And/Or as atribuições de cada cláusula. Se os resultados contiverem mais itens de trabalho do que o esperado, geralmente uma Or cláusula estará presente em vez de uma And cláusula.
  • Determine se você precisa agrupar ou alterar o agrupamento das cláusulas de consulta e as And/Or atribuições de cada cláusula agrupada.
  • Adicione mais cláusulas de consulta para refinar os critérios do filtro de consulta.
  • Analise as opções disponíveis para especificar campos, operadores e valores.
  • Consulte as práticas recomendadas, mais adiante neste artigo.

Desagrupar uma cláusula

Para desagrupar uma cláusula, selecione o ícone desagrupar cláusulas para a cláusula agrupada.


Exibir resultados da consulta em um painel

Os dois widgets a seguir exibem os resultados da consulta. Você pode abrir itens de trabalho diretamente desses widgets.

  • Trabalho atribuído a mim: lista todos os itens de trabalho propostos ou ativos atribuídos ao usuário conectado. Lista os campos ID, Estado e Título.
  • Widget de resultados da consulta: exibe os resultados de uma consulta plana, em árvore ou de links diretos. Você pode configurar os campos exibidos através do widget, redimensionar os campos de coluna e expandir e recolher a árvore e a consulta de links diretos.

Para obter mais informações, consulte Adicionar widgets a um painel.

Ver widget de resultados de consulta com Títulos pai

Você pode exibir os resultados de uma consulta com o título Pai exibido. Para fazer isso, execute estas etapas:

  1. Crie a consulta que filtra os itens de trabalho de interesse. A consulta pode ser uma consulta de lista plana, árvore ou links diretos.
  2. Adicione o campo Pai como uma coluna.
  3. Salve a consulta como uma consulta compartilhada ou Favorito da equipe.
  4. Adicione o widget Resultados da consulta ao seu painel e configure a consulta. Verifique se o campo Pai está definido para exibição.

A imagem a seguir ilustra um widget de resultados de consulta que exibe o campo Pai .

Captura de tela do widget de resultados da consulta mostrando um campo de coluna pai.

Um hiperlink de consulta usa a linguagem de consulta de item de trabalho (WIQL), que se assemelha ao Transact-SQL. Para obter mais informações, consulte Sintaxe para a linguagem de consulta de item de trabalho (WIQL).

Nota

A maioria dos navegadores impõe um limite entre 2000 e 2083 caracteres para uma cadeia de caracteres de URL.

Codifique a parte WIQL da sintaxe da URL. Você pode usar qualquer ferramenta de codificador de URL para codificar seu URL.

https://dev.azure.com/OrganizationName/ProjectName/_workitems?_a=query&wiql={Encoded WorkItemQueryLanguage}

Por exemplo, o hiperlink a seguir lista a ID e o título de todos os bugs ativos definidos no caminho da área FabrikamFiber/Web para a organização da Fabrikam.

https://dev.azure.com/fabrikam/FabrikamFiber/_workitems?_a=query&wiql=SELECT%20%5BSystem.ID%5D%2C%20%5BSystem.Title%5D%20FROM%20WorkItems%20WHERE%20%5BSystem.TeamProject%5D%3D'FabrikamFiber'%20AND%20%5BSystem.WorkItemType%5D%3D'Bug'%20AND%20%5BSystem.State%5D%3D'Active'%20AND%20%5BSystem.AreaPath%5D%3D'FabrikamFiber%5CWeb'

O WIQL decodificado está em conformidade com:

SELECT [System.ID], [System.Title]
   FROM WorkItems 
   WHERE [System.TeamProject]='FabrikamFiber' 
   AND [System.WorkItemType]='Bug'
   AND [System.State]='Active'
   AND [System.AreaPath]='FabrikamFiber\Web'

Nota

O comprimento do WIQL não deve exceder 32K caracteres para consultas do Azure Boards.

https://{ServerName}/{CollectionName}/{ProjectName}/_workitems?_a=query&wiql={Encoded WorkItemQueryLanguage}

Por exemplo, o hiperlink a seguir lista a ID, o título e o estado de todos os bugs no caminho da área FabrikamFiber/Web.

http://fabrikam:8080/tfs/DefaultCollection/FabrikamFiber/_workitems?_a=query&wiql=SELECT%20%5BSystem.ID%5D%2C%20%5BSystem.Title%5D%2C%20%5BSystem.State%5D%20FROM%20WorkItems%20WHERE%20%5BSystem.TeamProject%5D%3D'FabrikamFiber'%20AND%20%5BSystem.WorkItemType%5D%3D'Bug'%20AND%20%5BSystem.AreaPath%5D%3D'FabrikamFiber%5CWeb'%20%20

Por exemplo, consulte a seguinte entrada não codificada.

http://fabrikam:8080/tfs/DefaultCollection/FabrikamFiber/_workitems?_a=query&wiql=
SELECT [System.ID], [System.Title], [System.State] 
   FROM WorkItems 
   WHERE [System.TeamProject]='FabrikamFiber' 
   AND [System.WorkItemType]='Bug' 
   AND [System.AreaPath]='FabrikamFiber\Web'   

Melhores práticas

As seguintes práticas recomendadas se aplicam às seguintes consultas que você pode criar:

Crie consultas focadas e seletivas

Defina uma consulta altamente seletiva aplicando todos os filtros necessários para a sua consulta. Quanto mais seletiva for a consulta, menor será o conjunto de resultados. Quanto menor for o conjunto de resultados, mais direcionada e seletiva será a sua consulta.

Usar tags para categorizar itens de trabalho

Use marcas de item de trabalho para categorizar seus itens de trabalho em vez de um campo personalizado. As consultas que filtram em tags geralmente têm um desempenho mais rápido do que as consultas que filtram em correspondências de cadeia de caracteres.

Ao contrário das correspondências de campo personalizadas ou parciais, uma consulta com uma Tags Contains operação não requer uma verificação completa de todas as tabelas de itens de trabalho.

Uso Contains words para correspondências de cadeia de caracteres

Para filtrar uma correspondência de cadeia de caracteres, use o Contains Words operador em vez do Contains operador . O Contains Words operador executa uma pesquisa de texto completo no campo especificado, que tende a ser concluída mais rapidamente.

O Contains operador executa uma varredura de tabela, que é uma operação mais lenta do que o Contains Words operador. Ele também consome mais ciclos de CPU. Esses ciclos de CPU podem fazer com que você encontre limitações de taxa. Para obter mais informações, consulte Limites de taxa e uso.

Especificar pequenos grupos com o In Group operador

O In Group operador filtra itens de trabalho com base em correspondências dentro de um grupo de valores. O grupo de valores corresponde aos valores contidos em uma equipe, grupo de segurança ou categoria de controle de trabalho. Por exemplo, você pode criar uma consulta para localizar todos os itens de trabalho atribuídos a qualquer membro de uma equipe. Ou localize todos os itens de trabalho que pertencem à categoria de requisitos (Microsoft.RequirementCategory).

Quando você filtra um grupo que contém um grande número de membros, seu conjunto de resultados tende a ser maior e não seletivo. Além disso, se um grupo corresponder a um grupo grande do Microsoft Entra, a consulta gera um custo bastante grande para resolver esse grupo a partir do Microsoft Entra ID.

Evite o uso de operadores negados

Operadores negados, como <>, Not In, Not Under, Not In Group—tendem a gerar consultas não seletivas e grandes conjuntos de resultados.

Utilize apenas operadores negados quando necessário. Tente sempre encontrar alternativas primeiro. Por exemplo, se Field1 tiver valores A, B, C, D; especifique a Field1 In A, B, C cláusula, em vez da cláusula negada Field1 <> D .

Evitar comparações de cadeia de caracteres

As consultas que contêm comparações de cadeia de caracteres geram verificações de tabela que são inerentemente ineficientes. Em vez disso, recomendamos que você use tags ou um campo personalizado específico como alternativas, especialmente quando uma consulta tem um desempenho insatisfatório.

Operadores de limite Or

Limite o número de Or operadores definidos na sua consulta. As consultas funcionam melhor quando menos Or operadores são usados. Muitos Or operadores podem tornar sua consulta não seletiva. Se a consulta for executada lentamente, reordene a Or cláusula do operador na parte superior das cláusulas de consulta.

Guarde a sua consulta

Devido a otimizações internas, as consultas salvas tendem a ter um desempenho melhor do que as consultas não salvas. Guarde sempre a sua consulta quando planeia reutilizá-la. Mesmo para consultas WIQL executadas através de uma API REST, salve o WIQL através do portal da Web para fazer suas chamadas de API REST, para que eles sejam menos propensos a futuras regressões de desempenho.

Executar a sua consulta

Às vezes, você precisa executar sua consulta algumas vezes para alcançar o plano de otimização correto. Certifique-se de salvar sua consulta e executá-la até 10 vezes durante um período de 30 minutos. Desta forma, o sistema pode examinar e procurar o plano de otimização mais adequado para a sua consulta.