Otwieranie usterek lub przykładowych raportów scenariuszy użytkowników
Azure DevOps Services | Azure DevOps Server 2022 — Azure DevOps Server 2019
Aby wygenerować raport zawierający listę otwartych usterek lub scenariuszy użytkownika, wybierz raport Macierz w usłudze Power BI i użyj zapytania podobnego do tych podanych w tym artykule. Wygenerowany raport zawiera listę otwartych usterek lub scenariuszy użytkowników podzielonych według pól State (Stan ) i Assigned To (Przypisane do ), jak pokazano na poniższej ilustracji.
Uwaga
W tym artykule założono, że zapoznasz się z omówieniem przykładowych raportów przy użyciu zapytań OData i masz podstawową wiedzę na temat usługi Power BI.
Wymagania wstępne
- Dostęp: być członkiem projektu z co najmniej dostępem podstawowym.
- Uprawnienia: domyślnie członkowie projektu mają uprawnienia do wykonywania zapytań w usłudze Analytics i tworzenia widoków.
- Aby uzyskać więcej informacji na temat innych wymagań wstępnych dotyczących włączania usługi i funkcji oraz ogólnych działań śledzenia danych, zobacz Uprawnienia i wymagania wstępne dotyczące dostępu do analizy.
Przykładowe zapytania
Dostępnych jest kilka zapytań, które filtrują błędy lub scenariusze użytkowników według ścieżki obszaru, ścieżki iteracji lub zespołu. Wszystkie te zapytania określają WorkItems
zestaw jednostek, gdy zwracają bieżące, a nie historyczne dane.
Uwaga
Aby określić dostępne właściwości dla celów filtru lub raportu, zobacz Dokumentacja metadanych dla usługi Azure Boards. Możesz filtrować zapytania lub zwracać właściwości przy użyciu dowolnej z Property
wartości dostępnych EntityType
w elemecie EntitySet
lub NavigationPropertyBinding Path
. Każda z nich EntitySet
odpowiada elementowi EntityType
. Aby uzyskać więcej informacji na temat typu danych każdej wartości, zapoznaj się z metadanymi podanymi dla odpowiedniego EntityType
elementu .
Usterki filtrowane według ścieżki obszaru
Skopiuj i wklej następujące zapytanie usługi Power BI bezpośrednio w oknie Pobieranie pustego >zapytania. Aby uzyskać więcej informacji, zobacz Omówienie przykładowych raportów przy użyciu zapytań OData.
let
Source = OData.Feed ("https://analytics.dev.azure.com/{organization}/{project}/_odata/v3.0-preview/WorkItems?"
&"$filter=WorkItemType eq 'Bug' "
&"and StateCategory ne 'Completed' "
&"and startswith(Area/AreaPath,'{areapath}') "
&"&$select=WorkItemId,Title,WorkItemType,State,Priority,Severity,TagNames,AreaSK "
&"&$expand=AssignedTo($select=UserName),Iteration($select=IterationPath),Area($select=AreaPath) "
,null, [Implementation="2.0",OmitValues = ODataOmitValues.Nulls,ODataVersion = 4])
in
Source
Ciągi podstawienia i podział zapytań
Zastąp następujące ciągi wartościami. Nie dołączaj nawiasów {} do podstawienia. Na przykład jeśli nazwa organizacji to "Fabrikam", zastąp Fabrikam
ciąg {organization}
, a nie {Fabrikam}
.
{organization}
— Nazwa organizacji{project}
— Nazwa projektu zespołowego lub całkowicie pomiń "/{project}" dla zapytania obejmującego wiele projektów{areapath}
— Ścieżka obszaru. Przykładowy format:Project\Level1\Level2
Podział zapytań
W poniższej tabeli opisano każdą część zapytania.
Część kwerendy
Opis
$filter=WorkItemType eq 'Bug'
Zwracanie usterek.
and StateCategory ne 'Completed'
Odfiltruj ukończone elementy. Aby uzyskać więcej informacji na temat kategorii stanów, zobacz How workflow category states are used in Azure Boards backlogs and boards (Jak są używane stany kategorii przepływu pracy w listach prac i tablicach usługi Azure Boards).
and startswith(Area/AreaPath,'{areapath}')
Filtruj elementy robocze w ramach określonej ścieżki obszaru. Aby filtrować według nazwy zespołu, użyj instrukcji Teams/any(x:x/TeamName eq '{teamname})'
filter .
&$select=WorkItemId, Title, WorkItemType, State, Priority, Severity, TagNames
Wybierz pola, które mają być zwracane.
&$expand=AssignedTo($select=UserName), Iteration($select=IterationPath), Area($select=AreaPath)
Wybierz pola AssignedTo
właściwości z możliwością rozwinięcia, , Iteration
Area
.
Scenariusze użytkowników filtrowane przez zespoły
Możesz wykonywać zapytania dotyczące otwartych usterek przez co najmniej jedną drużynę, a nie ścieżkę obszaru.
Skopiuj i wklej następujące zapytanie usługi Power BI bezpośrednio w oknie Pobieranie pustego >zapytania. Aby uzyskać więcej informacji, zobacz Omówienie przykładowych raportów przy użyciu zapytań OData.
let
Source = OData.Feed ("https://analytics.dev.azure.com/{organization}/{project}/_odata/v3.0-preview/WorkItems?"
&"$filter=WorkItemType eq 'Bug' "
&"and StateCategory ne 'Completed'' "
&"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) "
,null, [Implementation="2.0",OmitValues = ODataOmitValues.Nulls,ODataVersion = 4])
in
Source
Scenariusze użytkownika w określonej ścieżce obszaru i ścieżce iteracji
Poniższe zapytanie obsługuje filtrowanie historii użytkowników dla określonej ścieżki obszaru i ścieżki iteracji.
Skopiuj i wklej następujące zapytanie usługi Power BI bezpośrednio w oknie Pobieranie pustego >zapytania. Aby uzyskać więcej informacji, zobacz Omówienie przykładowych raportów przy użyciu zapytań OData.
let
Source = OData.Feed ("https://analytics.dev.azure.com/{organization}/{project}/_odata/v3.0-preview/WorkItems?"
&"$filter=WorkItemType eq 'User Story' "
&"and startswith(Area/AreaPath,'{areapath}') "
&"and startswith(Iteration/IterationPath,'{iterationpath}') "
&"&$select=WorkItemId,Title,WorkItemType,State,Priority,Severity,TagNames,AreaSK "
&"&$expand=AssignedTo($select=UserName),Iteration($select=IterationPath),Area($select=AreaPath) "
,null, [Implementation="2.0",OmitValues = ODataOmitValues.Nulls,ODataVersion = 4])
in
Source
(Opcjonalnie) Zmienianie nazwy zapytania
Możesz zmienić nazwę domyślnej etykiety zapytania Query1 na bardziej zrozumiałą. Po prostu wprowadź nową nazwę w okienku Ustawienia zapytania.
Rozwijanie kolumn w Edytor Power Query
Klauzula &$expand=AssignedTo($select=UserName), Iteration($select=IterationPath), Area($select=AreaPath)
zwraca rekordy zawierające kilka pól. Przed utworzeniem raportu należy rozwinąć rekord, aby spłaszczać go w określone pola. W tym przypadku należy rozwinąć następujące rekordy:
AssignedTo
AreaPath
IterationPath
Aby dowiedzieć się, jak to zrobić, zobacz Transform Analytics data to generate Power BI reports (Przekształcanie danych analizy w celu generowania raportów usługi Power BI).
(Opcjonalnie) Zmienianie nazwy pól
Po rozwinięciu kolumn możesz zmienić nazwę co najmniej jednego pola. Możesz na przykład zmienić nazwę kolumny AreaPath
na Area Path
. Aby dowiedzieć się, jak to zrobić, zobacz Zmienianie nazwy pól kolumn.
Zamknij zapytanie i zastosuj zmiany
Po zakończeniu wszystkich przekształceń danych wybierz pozycję Zamknij i zastosuj z menu Narzędzia główne , aby zapisać zapytanie i wrócić do karty Raport w usłudze Power BI.
Tworzenie raportu macierzy
W usłudze Power BI wybierz raport Macierz w obszarze Wizualizacje.
Dodaj
Assigned To
do wierszy.Dodaj
State
do kolumn.Dodaj wartość 1WorkItemId1 do pozycji Wartości, a następnie kliknij prawym przyciskiem myszy pozycję 1WorkItemId i upewnij się, że wybrano opcję Liczba .
Zostanie wyświetlony przykładowy raport.
Powiązane artykuły
- Eksplorowanie przykładowych raportów przy użyciu zapytań OData
- Konstruowanie zapytań OData na potrzeby analizy
- Nawiązywanie połączenia z usługą Power BI przy użyciu zapytań OData
- Zapoznaj się z metadanymi usługi Azure Boards Analytics
- Uzyskiwanie dostępu do przykładowych raportów i szybkiego indeksu referencyjnego
- Dodawanie fragmentatora zespołu do istniejącego raportu