Ligar ao Azure DevOps a partir do Power Apps

O conector Power Apps para Azure DevOps permite-lhe trabalhar com a instância Azure DevOps. Pode ver as consultas do Azure DevOps, selecione os itens de trabalho com base em diferentes tipos de itens de trabalho e veja ou edite os detalhes, tudo a partir de uma aplicação de tela que se liga ao Azure DevOps.

Gorjeta

Para obter uma lista completa de todas as ações, consulte Ações do conector do Azure DevOps.

O objetivo deste artigo é guiá-lo na criação de uma aplicação de tela que se possa ligar ao Azure DevOps para recolher uma lista de consultas e interagir com os itens de trabalho no projeto.

Pré-requisitos

São necessários os seguintes requisitos:

Passo 1 — Adicionar origem de dados do Azure DevOps

Para ligar ao Azure DevOps, edite a aplicação de tela em branco e adicione a origem de dados do Azure DevOps.

Ligar ao Azure DevOps.

Se ainda não tiver uma ligação ao Azure DevOps, selecione Ligar e siga as mensagens de opções para fornecer os seus dados e, em seguida, permita que a aplicação se ligue.

Passo 2 — Listar consultas partilhadas

Nesta secção, utilizaremos a ação ListQueriesInFolder para o conector do Azure DevOps para listar as consultas disponíveis.

  1. A partir do painel esquerdo, selecione Inserir > Esquema > Galeria vertical em branco.

  2. Introduza a seguinte fórmula para a propriedade Items da galeria, substituindo os valores de parâmetros de exemplo conforme apropriado.

    AzureDevOps.ListQueriesInFolder("Project","Organization","Folder").value
    

Liste as consultas na pasta utilizando a fórmula adicionada à propriedade Items da galeria vertical.

Se o exemplo utilizar as variáveis "Projeto", "Organização" e "Pasta" e os valores reais estiverem nas caixas de texto abaixo da barra de fórmulas (realçada). Poderá encontrar os valores do Projeto e da Organização a partir do URL utilizado para ligar ao Azure Dev Ops. Normalmente, a pasta será "Consultas Partilhadas" ou "As Minhas Consultas".

Localize o nome do projeto e da organização para a sua instância do Azure Dev Ops.

Se obtiver o seguinte erro na fórmula acima, ative o acesso a aplicações de terceiros através do OAuth na sua organização do Azure DevOps e tente novamente.
"AzureDevOps.ListQueriesInFolder falhou:{"status":401,"message":"TF400813:O 'GUID' do utilizador não tem autorização para aceder a este recurso."}

  1. Selecione o Esquema para a galeria para Título e legenda.

  2. Escolha os campos adequados para o Azure Dev Ops, como Nome e FolderOptions para o título e a legenda.

Campos de galeria listagem de consultas.

Passo 3 — Listar itens de trabalho

Agora utilizamos a ação GetQueryResultsV2 para o conector do Azure DevOps listar todos os itens de trabalho para a consulta selecionada. Isto vincula a galeria à origem de dados.

  1. Insira outra galeria vertical em branco e coloque-a no lado direito da galeria existente.

  2. Introduza a seguinte fórmula para a propriedade Items da galeria, substituindo os valores de parâmetros de exemplo conforme apropriado. Substitua os nomes do Projeto e da Organização, conforme adequado.

    AzureDevOps.GetQueryResultsV2("Project", Text(Gallery1.Selected.Id),"Organization").value
    

Obtenha os resultados da consulta da galeria existente com base na consulta selecionada.

Esta fórmula utiliza a ação GetQueryResultsV2 com o nome de projeto, o ID de consulta e o nome da organização. O ID de consulta neste exemplo (Gallery2.Selected.Id) refere-se à consulta selecionada a partir da lista de consultas disponíveis através da galeria adicionada anteriormente. Substitua o nome da galeria conforme apropriado.

O resultado devolvido de GetQueryResultsV2 é dinâmico. Consequentemente, os valores também não têm tipo.

Mostrar campos de itens de trabalho do título, tipo de item de trabalho.

Contudo, pode aceder a alguns dos valores. O Azure Dev Ops devolve um conjunto básico de valores para todos os itens com tipo. Selecione o cartão de dados na galeria e insira duas etiquetas de texto. Defina a propriedade de texto das etiquetas da seguinte forma:

    ThisItem.Value.'System.WorkItemType'
    ThisItem.Value.'System.Title'

Passo 4 — Apresentar itens de trabalho

A aplicação mostra uma lista de todas as consultas e a lista de itens de trabalho para a consulta selecionada. Agora podemos adicionar um formulário de edição que utilizaremos simplesmente para apresentar dados.

  1. Ordene as duas galerias no ecrã para criar espaço para o formulário de edição que adicionamos ao mover ambas as galerias para a esquerda do ecrã.

  2. Adicione Editar formulário ao ecrã e mova-o para o lado direito das galerias.

Adicionar formulário de edição.

  1. Defina a propriedade DataSource do formulário de edição para AzureDevOps.GetQueryResultsV2("Project", Text(Gallery1.Selected.Id),"Organization").value. Substitua os nomes do Projeto e da Organização, conforme adequado.

  2. Defina a propriedade Item do formulário de edição para Gallery2.Selected.

    Esta fórmula define a propriedade Item para o formulário de edição para o item de trabalho que está selecionado na lista de itens de trabalho.

  3. Selecione os campos Editar campos a partir do painel de propriedades no lado direito do ecrã.

  4. Selecione ... (reticências) > Adicionar um cartão personalizado.

    Adicionar um cartão personalizado.

  5. Reordene o cartão de dados dentro do formulário de edição na parte superior.

    Cartão personalizado movido para a secção superior dentro do formulário de edição.

  6. Mantendo o cartão personalizado selecionado, insira um controlo Introdução de texto. Depois de selecionado, o controlo é adicionado dentro do cartão personalizado.

  7. Aumente o tamanho do controlo Introdução de texto.

Controlo Introdução de texto dentro do cartão personalizado.

  1. Defina a propriedade Default do controlo Introdução de texto para Text(ThisItem.Value.'System.Title'). A função Text "tipifica" a devolução como Texto.

Este é o controlo de introdução de texto referente ao título do item de trabalho.

Esta fórmula define o texto predefinido dentro do controlo de entrada de texto para o campo Título a partir do item de trabalho Azure DevOps selecionado.

Gorjeta

Se o seu projeto do Azure DevOps utilizar o campo Descrição com HTML ou texto formatado, também poderá utilizar o controlo de introdução Editor de texto formatado em vez do controlo Introdução de texto ou controlos de etiqueta. A utilização do controlo Editor de texto formatado neste caso também ajuda a resolver quaisquer problemas, tais como a apresentação da descrição com código HTML em vez de texto simples ou texto formatado.

  1. Repita os passos anteriores para adicionar outro cartão personalizado, com um controlo Introdução de texto dentro da propriedade Default definida para Text(ThisItem.Value.'System.State').

    Esta fórmula define o texto predefinido dentro do controlo de introdução de texto para o campo Estado a partir do item de trabalho do Azure DevOps selecionado.

  2. Reordene os cartões de dados dentro do formulário de edição para criar espaço onde adicionaremos o ícone de guardar.

Adicionar valores de devolução sem tipo e dinâmicos aos formulários

Até agora, temos estado a utilizar o formulário Editar, que simplifica o história do acesso aos dados ao fornecer uma propriedade DataSource e Item comuns com a qual todos os cartões de dados do formulário podem trabalhar. Se utilizar o formulário Editar, para aceder aos valores sem tipo, certifique-se de que definiu ambos, a origem de dados e as propriedades de item da seguinte forma: (Substitua os valores para Organização e Projeto.)

   AzureDevOps.GetWorkItemDetails(Gallery2.Selected.Value.'System.Id',Organization, Project, Gallery2.Selected.Value.'System.WorkItemType')

Quando passa a propriedade de texto "WorkItemType", por exemplo, "Caraterística", permite-lhe mudar de itens, tais como Caraterísticas e Itens de Trabalho. Uma vez que o conjunto de campos para estes itens diverge entre si, o tipo de devolução desta chamada é dinâmico.

Pode aceder a valores específicos utilizando o método comum Text(ThisItem.Value.'System.Id'). Em alternativa, pode aceder-lhes através da resposta dinâmica mais geral utilizando Text(ThisItem.fields.System_Id). Normalmente, estes nomes de valores dinâmicos não são documentados. Para encontrar os nomes corretos para estes campos, incluindo campos não padrão, abra a ferramenta de monitorização e examine a resposta de dados para a chamada GetWorkItemDetails. Consulte a imagem abaixo para obter mais orientações.

Se não estiver a utilizar um formulário Editar, mas, em vez estiver a utilizar um contentor, poderá obter estes valores utilizando uma fórmula, tal como a que se segue, que obtém informações a partir de um campo de equipa personalizado.

Text(AzureDevOps.GetWorkItemDetails(Gallery2.Selected.Value.'System.Id',Organization, Project, Gallery2.Selected.Value.'System.WorkItemType').fields.One_custom_CustomField1)

Controlo de introdução de texto que se refere ao título do item de trabalho.

Atualizar valores no Azure DevOps

Para atualizar um valor no Azure Dev Ops, utilize o UpdateWorkItem no OnSelect de um botão.

AzureDevOps.UpdateWorkItem(
    Gallery2.Selected.Value.'System.Id', 
    Organization, 
    {   description: "This is a new description", 
        dynamicFields: ParseJSON(JSON({'Custom Field 1': "This is new custom text" })) 
    }
);

A fórmula adiciona novo texto de amostra, mas também pode utilizar uma expressão do PowerFx.

Certifique-se de que a fórmula utiliza letra minúscula para nomes de campo não personalizados ou incorporados. Por exemplo, ao referir o campo "Descrição", utilize description: "This is a new description" em vez de Description:"This is a new description". A escrita incorreta pode resultar no erro "400 Parâmetro necessário em falta para a operação solicitada: 'UpdateWorkItem'". Para valores personalizados/dinâmicos, pode utilizar o campo de apresentação de letra normal. Por exemplo, o nome do campo para o campo personalizado é apenas o nome a apresentar "Campo Personalizado 1". Esta convenção de nomenclatura dos valores de devolução é específica do Azure DevOps e pode divergir de outros serviços.

Próximos passos

Executar a aplicação. Selecione uma consulta a partir da lista de consultas. E em seguida, escolha um item de trabalho a que queira atualizar o título ou descrição. Faça uma alteração e, em seguida, selecione o botão guardar. As alterações estão guardadas no item de trabalho Azure DevOps. Mude para uma outra consulta e mude de volta para ver as alterações no interior da aplicação.

Da mesma forma, personalize ainda mais a aplicação ou crie uma aplicação com cartões de dados adicionais em formulários. Também pode utilizar o formulário de apresentação em vez do formulário de edição para apenas mostrar dados dentro de diferentes cartões de dados. Ao utilizar o formulário de apresentação, certifique-se de que utiliza o controlo Etiqueta de texto para apresentar texto. Ao utilizar um texto formatado ou o formato HTML (como o campo Descrição no Azure DevOps), utilize o controlo Texto HTML. Para mais informações sobre como personalizar essa aplicação, consulte controlos, galeria, formulários e cartões.

Consulte também

Trabalhar com origens de dados do esquema dinâmico no Power Apps (experimental)

Nota

Pode indicar-nos as suas preferências no que se refere ao idioma da documentação? Responda a um breve inquérito. (tenha em atenção que o inquérito está em inglês)

O inquérito irá demorar cerca de sete minutos. Não são recolhidos dados pessoais (declaração de privacidade).