Sdílet prostřednictvím


Výpis ukázkových dotazů a sestav propojených pracovních položek

Azure DevOps Services | Azure DevOps Server 2022 – Azure DevOps Server 2019

V tomto článku se dozvíte, jak vytvořit sestavu se seznamem pracovních položek propojených s jinými pracovními položkami. Například následující sestava zobrazuje seznam funkcí propojených s uživatelskými příběhy s typem odkazu nadřazený-podřízený.

Snímek obrazovky s odkazy nadřazené a podřízené sestavy v tabulce Funkce a Uživatelské scénáře

Další informace o typech propojení a propojení pracovních položek najdete v tématu Propojení uživatelských scénářů, problémů, chyb a dalších pracovních položek.

Mezi další ukázkové dotazy patří výpis chyb s duplicitním odkazem na jinou chybu a výpis chyb, které neobsahují duplicitní odkaz na jinou chybu.

Poznámka:

Tento článek předpokládá, že si přečtete přehled ukázkových sestav pomocí dotazů OData a máte základní znalosti o Power BI.

Požadavky

  • Přístup: Buďte členem projektu s alespoň základním přístupem.
  • Oprávnění: Ve výchozím nastavení mají členové projektu oprávnění k dotazování na Analýzy a vytváření zobrazení.
  • Další informace o dalších požadavcích týkajících se povolení služeb a funkcí a obecných aktivit sledování dat najdete v tématu Oprávnění a požadavky pro přístup k Analýzám.

Vzorové dotazy

K dispozici je několik dotazů, které ukazují, jak filtrovat propojené pracovní položky. Všechny tyto dotazy určují WorkItems sadu entit, která vrací aktuální data.

Poznámka:

Informace o dostupných vlastnostech pro účely filtru nebo sestavy najdete v referenčních informacích k metadatům pro Azure Boards. Dotazy můžete filtrovat nebo vracet vlastnosti pomocí libovolné hodnoty Property pod hodnotami nebo NavigationPropertyBinding Path hodnotami dostupnými v objektu EntitySetEntityType . Každý EntitySet odpovídá hodnotě EntityType. Další informace o datovém typu každé hodnoty najdete v metadatech zadaných pro odpovídající EntityTypehodnotu .

Vrácení funkcí a jejich podřízených uživatelských scénářů

Zkopírujte a vložte následující dotaz Power BI přímo do okna Získat>prázdné dotazy . Další informace najdete v tématu Přehled ukázkových sestav pomocí dotazů 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

Náhradní řetězce a rozpis dotazů

Nahraďte následující řetězce hodnotami. Nezahrnujte do náhradních závorek {} . Pokud je například název vaší organizace "Fabrikam", nahraďte {organization} ho Fabrikam, nikoli {Fabrikam}.

  • {organization} – Název vaší organizace
  • {project} – Název vašeho týmového projektu nebo úplně vynecháte /{project}, pro dotaz mezi projekty
  • {areapath} - Cesta k vaší oblasti. Příklad formátu: Project\Level1\Level2.

Rozpis dotazů

Následující tabulka popisuje jednotlivé části dotazu.

Část dotazování

Popis

$filter=WorkItemType eq 'Feature'

Vrátí uživatelské scénáře.

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

Vynechání funkcí, jejichž stav je nastaven na Uzavřeno nebo Odebráno.

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

Zahrnout pouze funkce v rámci konkrétní cesty oblasti nahrazení '{areapath}'.
Chcete-li filtrovat podle názvu týmu, použijte příkaz Teams/any(x:x/TeamName eq '{teamname})'filtru .

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

Vyberte pole, která chcete vrátit.

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

Zadejte pole, která se mají použít k rozbalení AssignedTo, Iterationa Area entit.

Links(

Rozbalte entitu Links .

$filter=LinkTypeName eq 'Child'

Filtrujte propojené pracovní položky jenom na ty, které mají typ podřízeného odkazu. Další příklady jsou nadřazený, podřízený, duplicitní, duplicitní, ovlivněný.

and TargetWorkItem/WorkItemType eq 'User Story';

Zahrnout pouze propojené uživatelské scénáře.

$select=LinkTypeName;

Vyberte vlastnost, LinkTypeName která se má vrátit.

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

Vyberte vlastnosti propojené pracovní položky, která se má vrátit.

)

Zavřete klauzuli Links() .

Zkopírujte a vložte následující dotaz Power BI přímo do okna Získat>prázdné dotazy . Další informace najdete v tématu Přehled ukázkových sestav pomocí dotazů 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

Vrácení propojených uživatelských scénářů filtrovaných podle Teams

Následující dotaz je stejný jako ten, který jste použili dříve v tomto článku, s tím rozdílem, že filtruje podle názvu týmu místo cesty k oblasti.

Zkopírujte a vložte následující dotaz Power BI přímo do okna Získat>prázdné dotazy . Další informace najdete v tématu Přehled ukázkových sestav pomocí dotazů 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

Zkopírujte a vložte následující dotaz Power BI přímo do okna Získat>prázdné dotazy . Další informace najdete v tématu Přehled ukázkových sestav pomocí dotazů 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

Zkopírujte a vložte následující dotaz Power BI přímo do okna Získat>prázdné dotazy . Další informace najdete v tématu Přehled ukázkových sestav pomocí dotazů 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

(Volitelné) Přejmenování dotazu

Výchozí popisek dotazu , Query1, můžete přejmenovat na něco smysluplnějšího. Jednoduše zadejte nový název z podokna Nastavení dotazu.

Snímek obrazovky s možnostmi nabídky dotazu Power BI a přejmenování dotazu

Transformace dat v Editor Power Query

Před vytvořením sestavy budete muset rozbalit sloupce, které vracejí záznamy obsahující několik polí. V tomto případě budete chtít rozbalit následující záznamy:

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

Informace o tom, jak rozbalit pracovní položky, najdete v tématu Transformace analytických dat pro generování sestav Power BI.

(Volitelné) Přejmenování polí

Po rozbalení sloupců můžete chtít přejmenovat jedno nebo více polí. Sloupec můžete například přejmenovat AreaPath na Area Path. Při vytváření sestavy je můžete přejmenovat v zobrazení tabulky dat nebo později. Postup najdete v tématu Přejmenování polí sloupců.

V tomto příkladu byla přejmenována následující pole:

Původní název pole Přejmenovat
Links.TargetWorkItem.ID ID cíle
LinksLinkTypeName Typ propojení
Links.TargetWorkItem.State Cílový stav
Links.TargetWorkItem.Title Cílový název

Zavřete dotaz a použijte změny.

Jakmile dokončíte všechny transformace dat, v nabídce Domů zvolte Zavřít a použít dotaz a vraťte se na kartu Sestava v Power BI.

Snímek obrazovky s možností Zavřít a Použít Editor Power Query

Vytvoření sestavy tabulky pro výpis propojených pracovních položek

  1. V Power BI zvolte v části Vizualizace sestavu tabulky.

    Snímek obrazovky s výběrem vizualizací a polí Power BI pro sestavu tabulky se seznamem nadřazených a podřízených odkazů

  2. Do sloupců přidejte následující pole v uvedeném pořadí:

    • ID, kliknutí pravým tlačítkem myši a výběr možnosti Nevystihovejte souhrn
    • Kraj
    • Název
    • ID cíle, kliknutí pravým tlačítkem myši a výběr možnosti Nevystihovejte souhrn
    • Typ propojení
    • Cílový stav
    • Cílový název

Zobrazí se ukázková sestava.

Snímek obrazovky s ukázkovými odkazy nadřazenosti a podřízenými odkazy na sestavu tabulky Funkce a Uživatelské scénáře