Share via


Listar itens de trabalho vinculados consultas de exemplo e relatórios

Azure DevOps Services | Azure DevOps Server 2022 - Azure DevOps Server 2019

Este artigo mostra como criar um relatório que lista itens de trabalho vinculados a outros itens de trabalho. Por exemplo, o relatório a seguir mostra uma lista de Recursos vinculados a Histórias de Usuário com o tipo de link pai-filho.

Captura de tela dos links pai-filho do relatório de tabela Recursos e Histórias de Usuário.

Para saber mais sobre tipos de link e vinculação de itens de trabalho, consulte Vincular histórias de usuários, problemas, bugs e outros itens de trabalho.

Outras consultas de exemplo incluem listar bugs com um link Duplicado para outro bug e listar bugs que não contêm um link Duplicado para outro bug.

Observação

Este artigo pressupõe que você tenha lido Visão geral de relatórios de exemplo usando consultas OData e tenha uma compreensão básica do Power BI.

Pré-requisitos

  • Para exibir dados do Analytics e consultar o serviço, você precisa ser membro de um projeto com acesso básico ou superior. Por padrão, todos os membros do projeto recebem permissões para consultar Análise e definir exibições do Analytics.
  • Para saber mais sobre outros pré-requisitos relacionados à habilitação de serviço e recursos e atividades gerais de acompanhamento de dados, consulte Permissões e pré-requisitos para acessar o Analytics.

Consultas de exemplo

Várias consultas são fornecidas que mostram como filtrar itens de trabalho vinculados. Todas essas consultas especificam o WorkItems conjunto de entidades à medida que retornam os dados atuais.

Observação

Para determinar as propriedades disponíveis para fins de filtro ou relatório, consulte Referência de metadados para Azure Boards. Você pode filtrar suas consultas ou retornar propriedades usando qualquer um dos Property valores em um EntityType ou NavigationPropertyBinding Path valores disponíveis com um EntitySet. Cada EntitySet corresponde a um EntityType. Para saber mais sobre o tipo de dados de cada valor, examine os metadados fornecidos para o correspondente EntityType.

Recursos de retorno e suas histórias de usuário filho

Você pode colar a consulta do Power BI listada abaixo diretamente na janela Obter Consulta em Branco de> Dados . Para obter mais informações, examine Visão geral de relatórios de exemplo usando consultas OData.


let
   Source = OData.Feed ("https://analytics.dev.azure.com/{organization}/{project}/_odata/v3.0-preview/WorkItems?"
        &"$filter=WorkItemType eq 'Feature' "
            &"and State ne 'Closed' and State ne 'Removed' "
            &"and startswith(Area/AreaPath,'{areapath}') " 
        &"&$select=WorkItemId,Title,WorkItemType,State,AreaSK "
        &"&$expand=AssignedTo($select=UserName),Iteration($select=IterationPath),Area($select=AreaPath), "
                &"Links( "
                    &"$filter=LinkTypeName eq 'Child' "
                        &"and TargetWorkItem/WorkItemType eq 'User Story'; "
                    &"$select=LinkTypeName; "
                    &"$expand=TargetWorkItem($select=WorkItemType,WorkItemId,Title,State) "
                &") "
    ,null, [Implementation="2.0",OmitValues = ODataOmitValues.Nulls,ODataVersion = 4]) 
in
    Source

Cadeias de caracteres de substituição e detalhamento de consulta

Substitua as cadeias de caracteres a seguir pelos valores. Não inclua colchetes {} com sua substituição. Por exemplo, se o nome da sua organização for "Fabrikam", substitua por {organization}Fabrikam, não {Fabrikam}.

  • {organization} - Nome da sua organização
  • {project} - O nome do projeto da sua equipe, ou omitir "/{project}" completamente, para uma consulta entre projetos
  • {areapath} - Seu caminho de área. Formato de exemplo: Project\Level1\Level2.

Detalhamento da consulta

A tabela a seguir descreve cada parte da consulta.

Parte da consulta

Descrição

$filter=WorkItemType eq 'Feature'

Retornar histórias de usuários.

and State ne 'Closed' and State ne 'Removed'

Omitir Recursos cujo Estado está definido como Fechado ou Removido.

and startswith(Area/AreaPath,'{areapath}')

Inclua apenas Recursos em um Caminho de Área específico substituindo '{areapath}'.
Para filtrar por um nome de equipe, use a instrução Teams/any(x:x/TeamName eq '{teamname})'filter .

&$select=WorkItemId,Title,WorkItemType,State,AreaSK

Selecione os campos a serem retornados.

&$expand=AssignedTo($select=UserName), Iteration($select=IterationPath), Area($select=AreaPath),

Especifique os campos a serem usados para expandir AssignedTo, Iteratione Area entidades.

Links(

Expanda a Links entidade.

$filter=LinkTypeName eq 'Child'

Filtre itens de trabalho vinculados somente para aqueles com tipo de link filho . Outros exemplos são Pai, Filho, Duplicado, Duplicado de, Afeta, Afetado por.

and TargetWorkItem/WorkItemType eq 'User Story';

Inclua apenas Histórias de Usuário vinculadas.

$select=LinkTypeName;

Selecione a LinkTypeName propriedade a ser retornada.

$expand=TargetWorkItem($select=WorkItemType, WorkItemId, Title, State)

Selecione as propriedades do item de trabalho vinculado a ser retornado.

)

Feche a Links() cláusula.

Você pode colar a consulta do Power BI listada abaixo diretamente na janela Obter Consulta em Branco de> Dados . Para obter mais informações, examine Visão geral de relatórios de exemplo usando consultas OData.

let
   Source = OData.Feed ("https://analytics.dev.azure.com/{organization}/{project}/_odata/v3.0-preview/WorkItems?"
        &"$filter=WorkItemType eq 'User Story' "
            &"and State ne 'Closed' "
            &"and startswith(Area/AreaPath,'{areapath}') "
        &"&$select=WorkItemId,Title,WorkItemType,State,AreaSK "
        &"&$expand=AssignedTo($select=UserName),Iteration($select=IterationPath),Area($select=AreaPath), "
                &"Links( "
                    &"$filter=LinkTypeName eq 'Related' "
                        &"and TargetWorkItem/WorkItemType eq 'User Story'; "
                    &"$select=LinkTypeName; "
                    &"$expand=TargetWorkItem($select=WorkItemType,WorkItemId,Title,State) "
                &") "
    ,null, [Implementation="2.0",OmitValues = ODataOmitValues.Nulls,ODataVersion = 4]) 
in
    Source

Retornar histórias de usuário vinculadas filtradas pelo Teams

A consulta a seguir é a mesma usada anteriormente neste artigo, exceto que filtra por Nome da Equipe em vez de Caminho da Área.

Você pode colar a consulta do Power BI listada abaixo diretamente na janela Obter Consulta em Branco de> Dados . Para obter mais informações, examine Visão geral de relatórios de exemplo usando consultas OData.

let
   Source = OData.Feed ("https://analytics.dev.azure.com/{organization}/{project}/_odata/v3.0-preview/WorkItems?"
        &"$filter=WorkItemType eq 'User Story' "
            &"and State ne 'Closed' "
            &"and (Teams/any(x:x/TeamName eq '{teamname}) or Teams/any(x:x/TeamName eq '{teamname}) or Teams/any(x:x/TeamName eq '{teamname}) "
        &"&$select=WorkItemId,Title,WorkItemType,State,Priority,Severity,TagNames,AreaSK "
        &"&$expand=AssignedTo($select=UserName),Iteration($select=IterationPath),Area($select=AreaPath), "
                &"Links( "
                    &"$filter=LinkTypeName eq 'Related' "
                        &"and TargetWorkItem/WorkItemType eq 'User Story'; "
                    &"$select=LinkTypeName; "
                    &"$expand=TargetWorkItem($select=WorkItemType,WorkItemId,Title,State) "
                &") "
    ,null, [Implementation="2.0",OmitValues = ODataOmitValues.Nulls,ODataVersion = 4]) 
in
    Source

Você pode colar a consulta do Power BI listada abaixo diretamente na janela Obter Consulta em Branco de> Dados . Para obter mais informações, examine Visão geral de relatórios de exemplo usando consultas OData.

let
    Source = OData.Feed ("https://analytics.dev.azure.com/{organization}/{project}/_odata/v3.0-preview/WorkItems?"
        &"$filter=WorkItemType eq 'Bug' "
            &"and State ne 'Closed' "
            &"and startswith(Area/AreaPath,'{areapath}') "
            &"and Links/any(x:x/LinkTypeName eq 'Duplicate' and x/TargetWorkItem/WorkItemType eq 'Bug') "
        &"&$select=WorkItemId,Title,WorkItemType,State,Priority,Severity,TagNames "
        &"&$expand=AssignedTo($select=UserName),Iteration($select=IterationPath),Area($select=AreaPath), "
            &"Links( "
                &"$filter=LinkTypeName eq 'Duplicate' "
                &"and TargetWorkItem/WorkItemType eq 'Bug'; "
                    &"$select=LinkTypeName; "
                &"$expand=TargetWorkItem($select=WorkItemType,WorkItemId,Title,State) "
            &") "
    ,null, [Implementation="2.0",OmitValues = ODataOmitValues.Nulls,ODataVersion = 4]) 
in
    Source

Você pode colar a consulta do Power BI listada abaixo diretamente na janela Obter Consulta em Branco de> Dados . Para obter mais informações, examine Visão geral de relatórios de exemplo usando consultas OData.

let
   Source = OData.Feed ("https://analytics.dev.azure.com/{organization}/{project}/_odata/v3.0-preview/WorkItems?"
        &"$filter=WorkItemType eq 'Bug' "
                &"and State ne 'Closed' "
                &"and startswith(Area/AreaPath,'{areapath}') "
                &"and not (Links/any(x:x/LinkTypeName eq 'Duplicate' and x/TargetWorkItem/WorkItemType eq 'Bug')) "
        &"&$select=WorkItemId,Title,WorkItemType,State,Priority,Severity,TagNames "
        &"&$expand=AssignedTo($select=UserName),Iteration($select=IterationPath),Area($select=AreaPath) "
    ,null, [Implementation="2.0",OmitValues = ODataOmitValues.Nulls,ODataVersion = 4]) 
in
    Source

(Opcional) Renomear consulta

Você pode renomear o rótulo de consulta padrão, Query1, para algo mais significativo. Basta inserir um novo nome no painel Configurações de Consulta .

Captura de tela das opções de menu de consulta do Power BI, renomear consulta.

Transformar dados no Power Query Editor

Antes de criar o relatório, você precisará expandir colunas que retornam registros que contêm vários campos. Nesse caso, você desejará expandir os seguintes registros:

  • Links
  • Links.TargetWorkItem
  • Area
  • Iteration
  • AssignedTo

Para saber como expandir itens de trabalho, confira Transformar dados do Analytics para gerar relatórios do Power BI.

(Opcional) Renomear campos

Depois de expandir as colunas, convém renomear um ou mais campos. Por exemplo, você pode renomear a coluna AreaPath para Area Path. Você pode renomeá-los no modo de exibição de tabela de dados ou posteriormente ao criar o relatório. Para saber como, consulte Renomear campos de coluna.

Neste exemplo, os seguintes campos foram renomeados:

Nome do campo original Renomear
Links.TargetWorkItem.ID ID de destino
LinksLinkTypeName Tipo de link
Links.TargetWorkItem.State Estado de Destino
Links.TargetWorkItem.Title Título do Alvo

Feche a consulta e aplique suas alterações

Depois de concluir todas as transformações de dados, escolha Fechar & Aplicar no menu Página Inicial para salvar a consulta e retornar à guia Relatório no Power BI.

Captura de tela da opção Fechar e Aplicar Editor do Power Query.

Criar um relatório de tabela para listar itens de trabalho vinculados

  1. No Power BI, escolha Relatório de tabela em Visualizações.

    Captura de tela do relatório de tabela de lista Visualizações e Campos do Power BI para Links Pai-Filho.

  2. Adicione os seguintes campos na ordem indicada para Colunas:

    • ID, clique com o botão direito do mouse e selecione Não resumir
    • State
    • Título
    • ID de destino, clique com o botão direito do mouse e selecione Não resumir
    • Tipo de link
    • Estado de destino
    • Título do Alvo

O relatório de exemplo é exibido.

Captura de tela do relatório de tabela Exemplos de links pai-filho de Recursos e Histórias de Usuário.