Споделяне чрез


Свържете се с Azure DevOps от Power Apps

Конектор на Power Apps за Azure DevOps ви позволява да работите с екземпляр на Azure DevOps. Можете да преглеждате Azure DevOps заявки, да избирате работни елементи въз основа на различни типове работни елементи и да преглеждате или редактирате подробности от приложението за платно, с което се свързва Azure DevOps.

Съвет

За пълния списък на всички действия вижте Всички действия на Azure DevOps.

Целта на тази статия е да ви насочи в изграждането на приложение за платно, с което може да се свърже Azure DevOps , за да събере списък със заявки и да взаимодейства с работните елементи в проекта.

Предварителни изисквания

Необходими са следните изисквания:

Стъпка 1 - Добавяне Azure DevOps на източник на данни

За да се свържете с Azure DevOps, редактирайте празното приложение за платно и добавете Azure DevOps източник на данни.

Свържете се към Azure DevOps.

Ако нямате Azure DevOps връзка вече, изберете Свържете се и следвайте подканите, за да предоставите данните си, и след това позволете на приложението да се свърже.

Стъпка 2 – Изброяване на споделени заявки

В този раздел ще използваме ListQueriesInFolder действие за Azure DevOps конектор за списък на наличните заявки.

  1. В левия прозорец изберете Вмъкване > Оформление > Празна вертикална галерия.

  2. Въведете следната формула за свойството Items на галерията, като замените стойностите на примерните параметри по подходящ начин.

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

Избройте заявките в папка с помощта на формула, добавена към свойството Елементи на вертикалната галерия.

Ако в примера се използват променливите "Проект", "Организация" и "Папка", а действителните стойности са в текстовите полета под лентата с формули (маркирани). Можете да намерите вашите стойности на Project и Organization от URL адреса, използван за свързване с Azure Dev Ops. Папката обикновено ще бъде "Споделени заявки" или "Моите заявки".

Намерете името на проекта и организацията за вашия екземпляр на Azure Dev Ops.

Ако получите следната грешка във формулата по-горе, разрешете достъпа до приложения на трети страни с помощта на OAuth във вашата Azure DevOps организация и опитайте отново.
"AzureDevOps.ListQueriesInFolder failed:{"status":401,"message":"TF400813:Потребителят "GUID" не е упълномощен за достъп до този ресурс."}

  1. Изберете Разположението на галерията за Заглавие и подзаглавие.

  2. Изберете полетата, подходящи за Azure Dev Ops като Name и FolderOptions за заглавието и субтитрите.

Галерийни полета за заявки за списъци.

Стъпка 3 - Списък на работните елементи

Сега използваме действието GetQueryResultsV2 за конектора Azure DevOps , за да изброим всички работни елементи за избраната заявка. Това свързва галерията с източник на данни.

  1. Вмъкнете друга празна вертикална галерия и я поставете от дясната страна на съществуващата галерия.

  2. Въведете следната формула за свойството Items на галерията, като замените стойностите на примерните параметри по подходящ начин. Заменете имената на вашия проект и организация, ако е подходящо.

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

Получаване на резултати от заявка от съществуваща галерия въз основа на избраната заявка.

Тази формула използва GetQueryResultsV2 действие с името на проекта, ID на заявката и името на организацията. ID на заявката в този пример (Gallery2.Selected.Id) се отнася до заявката, избрана от списъка със заявки, достъпни чрез добавената по-рано галерия. Заменете името на галерията според случая.

Върнатият резултат от GetQueryResultsV2 е динамичен. И следователно стойностите също са нетипизирани.

Показване на полета на работния елемент със заглавие, тип работен елемент.

Можете обаче да получите достъп до някои от стойностите. Azure Dev Ops връща основен набор от стойности за всички въведени елементи. Изберете картата с данни в галерията и вмъкнете два текстови етикета. Задайте свойството text на етикетите, както следва:

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

Стъпка 4 - Показване на работни елементи

Приложението показва списък с всички заявки и списък с работни елементи за избраната заявка. Сега можем да добавим формуляр за редактиране, който ще използваме за просто показване на данни.

  1. Подредете двете галерии на екрана, за да освободите място за формуляра за редактиране, който добавяме, като преместите двете галерии вляво на екрана.

  2. Добавете Редактиране на формуляр към екрана и го преместете в дясната част на галериите.

Добавете формуляр за редактиране.

  1. Задайте свойството DataSource на формуляра за редактиране на AzureDevOps.GetQueryResultsV2("Project", Text(Gallery1.Selected.Id),"Organization").value. Заменете имената на вашия проект и организация, ако е подходящо.

  2. Задайте свойството Item на контрола за редактиране на формуляр на Gallery2.Selected.

    Тази формула определя свойството Item за формуляра за редактиране към работния елемент, който е избран в списъка с работни елементи.

  3. Изберете Редактиране на полета от прозореца със свойства в дясната част на екрана.

  4. Изберете ... (многоточие) > Добавяне на персонализиран карта.

    Добавете персонализирана карта.

  5. Пренаредете картата с данни във формуляра за редактиране в горната част.

    Персонализираната карта е преместена в горната секция във формуляра за редактиране.

  6. Запазвайки избраната персонализирана карта, поставете контролата Въвеждане на текст. Веднъж избрана, контролата се добавя в персонализираната карта.

  7. Увеличете размера на контролата за въвеждане на текст.

Контрол за въвеждане на текст в персонализирана карта.

  1. Задайте свойството По подразбиране на контролата за въвеждане на текст. Text(ThisItem.Value.'System.Title') Функцията Text "въвежда" връщането като Text.

Това е контрола за въвеждане на текст, отнасяща се до заглавието на работния елемент.

Тази формула задава текста по подразбиране в контролата за въвеждане на текст на поле Заглавие от избрания работен елемент на Azure DevOps.

Съвет

Ако вашият Azure DevOps проект използва поле "Описание " с HTML или RTF текст, можете също да използвате контролата за въвеждане на RTF текстов редактор вместо контролите "Въвеждане на текст" или "Етикет". Използването на контролата Обогатен текстов редактор в този случай също помага за разрешаването на всякакви проблеми, като например показването на описанието с HTML код вместо обикновен или обогатен текст.

  1. Повторете предишните стъпки, за да добавите друга персонализирана карта с контрола за въвеждане на текст вътре със свойството По подразбиране . Text(ThisItem.Value.'System.State')

    Тази формула задава текста по подразбиране в контролата за въвеждане на текст в полето Състояние от избрания Azure DevOps работен елемент.

  2. Пренаредете картите с данни във формуляра за редактиране, за да създадете място, където ще добавим иконата за запазване.

Добавяне на невъведени и динамични върнати стойности към вашите формуляри

Досега използвахме формуляра за редактиране, който опростява историята на достъпа до данни, като предоставя общо свойство DataSource и Item, с което могат да работят всички карти с данни във формуляра. Ако използвате формуляра Редактиране, за достъп до невъведените стойности се уверете, че сте задали както източник на данни, така и свойствата на елемента, както следва: (Заместване на вашите стойности за Организация и Проект.)

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

Когато подадете текстовото свойство "WorkItemType", например "Feature", то ви позволява да превключвате от елементи като функции и работни елементи. Тъй като наборът от полета за тези елементи се различава едно от друго, типът на връщане от това извикване е динамичен.

Можете да получите достъп до конкретни стойности, като използвате общия метод Text(ThisItem.Value.' System.Id'). Като алтернатива можете да получите достъп до тях чрез по-общия динамичен отговор с помощта на Text(ThisItem.fields.System_Id). Тези динамични имена на стойности обикновено не са документирани. За да намерите правилните имена за тези полета, включително нестандартни полета, отворете инструмента за наблюдение и прегледайте отговора на данните за извикването GetWorkItemDetails. Вижте изображението по-долу за допълнителни насоки.

Ако не използвате формуляр за редактиране, а вместо това използвате контейнер, тогава можете да извлечете тези стойности с помощта на формула като тази по-долу, която извлича информация от персонализирано поле на екипа.

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

Контрола за въвеждане на текст, която препраща към заглавието на работния елемент.

Актуализиране на стойностите в Azure DevOps

За да актуализирате стойност в Azure Dev Ops, използвайте UpdateWorkItem в бутона OnSelect на бутон.

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" })) 
    }
);

Формулата добавя нов примерен текст, но можете да използвате и израз на PowerFx.

Уверете се, че формулата използва малки букви за имената на полетата, които не са персонализирани или вградени. Например, когато се позовавате на полето "Описание", използвайте description: "This is a new description" вместо Description:"This is a new description". Неправилният корпус може да доведе до грешка "400 Липсва необходим параметър за заявената операция: 'UpdateWorkItem'". За потребителски/динамични стойности можете да използвате нормалния регистър на полето за показване. Например името на полето за персонализираното поле е само показваното име "Персонализирано поле 1". Тази конвенция за именуване на върнатите стойности е специфична за Azure DevOps и може да се различава от другите услуги.

Следващи стъпки

Изпълнение на приложението. Изберете заявка от списъка със заявки. След това изберете работен елемент, чието заглавие или описание искате да актуализирате. Направете промяна и след това изберете бутона за запазване. Промените се записват в работния елемент на Azure DevOps. Превключете към друга заявка и превключете обратно, за да видите промените, които се показват в приложението.

По същия начин персонализирайте приложението допълнително или създайте приложение с допълнителни карти с данни във формуляри. Можете също да използвате формуляр за показване вместо формуляр за редактиране, за да показвате само данни в различни карти с данни. Когато използвате формата за показване, уверете се, че използвате контролата Текстов етикет за показване на текст. Когато използвате формат с форматиран текст или HTML (като поле Описание в Azure DevOps), използвайте HTML текст контрол. За повече информация относно персонализирането на това приложение вижте контроли, галерия, форми и карти.

Вижте също

Работа с източници на данни на динамична схема в Power Apps (експериментално)

Бележка

Можете ли да ни споделите повече за езиковите си предпочитания за документацията? Попълнете кратко проучване. (имайте предвид, че това проучване е на английски език)

Проучването ще отнеме около седем минути. Не се събират лични данни (декларация за поверителност).