Definování dotazu na pracovní položku pro přidání do šablony procesu
Soubor dotazu na pracovní položky (.wiq) lze nejsnadněji vytvořit v nástroji Průzkumník týmových projektů.V existujícím týmovém projektu můžete Průzkumník týmových projektů použít k vytvoření všech dotazů na pracovní položky, které chcete přidat do šablony procesu, a potom podle pokynů v tomto tématu uložit jednotlivé dotazy jako soubor .wiq.Další informace o vytváření dotazů na pracovní položky naleznete v tématu Dotaz na pracovní položky.
Požadavky
Pokud chcete vytvořit dotaz, musíte být členem skupiny Čtenáři, nebo vaše oprávnění Zobrazit pracovní položky v tomto uzlu musí být nastaveno na hodnotu Povolit u každého týmového projektu v dotazu.
Chcete-li uložit dotaz jako dotaz týmu, musí mít vhodná oprávnění popsané v Nastavení oprávnění k dotazům.
Uložení dotazu na pracovní položky jako souboru .wiq
V nástroji Průzkumník týmových projektů otevřete dotaz, který chcete uložit.
Na soubor nabídce zvolte Uložit < název dotazu > [dotaz] jako.
V dialogovém okně Uložit dotaz jako klikněte na tlačítko Soubor a určete umístění a název souboru .wiq.Alternativně klikněte na tlačítko Procházet, zadejte název souboru, přejděte do umístění, kam chcete soubor uložit, a klikněte na tlačítko Uložit.
Zkopírujte soubor do složky \WorkItem Tracking\Queries, která je ve složce, do které jste stáhli šablonu procesu.
Otevřete soubor .wiq v textovém editoru.
Odebrat < TeamFoundationServer > a < TeamProject > elementů, u nichž přidružit konkrétní server, který je spuštěn dotaz Visual Studio Team Foundation Server a konkrétní týmový projekt, jako ukazuje následující příklad:
<TeamFoundationServer>CollectionURL</TeamFoundationServer> <TeamProject>ProjectName</TeamProject>
[!POZNÁMKA]
Je nutné upravit soubor .wiq v textovém editoru a odebrat < TeamFoundationServer > a < TeamProject > elementů, u nichž přidružit dotaz na určitém serveru a týmového projektu.Pokud to neuděláte, nebude dotaz správně fungovat, pokud se šablona procesu odešle na jiný server.Kde je to možné, můžete alternativně použít makra, aby dotaz neobsahoval explicitní název aktuálního týmového projektu nebo jiné hodnoty, které jsou specifické pro určité prostředí.
Odeberte všechny další elementy, které jsou specifické pro uživatele.
Vytvoření dotazu na pracovní položky, který odkazuje na cestu iterace
Zahrnutím makra $$PROJECTNAME$$ pro týmový projekt a názvu cesty iterace, který je definován v souboru Classification modulu plug-in, můžete definovat dotaz, který odkazuje na konkrétní cestu iterace.Následující syntaxe například určuje dotaz, který zahrnuje pouze ty pracovní položky, jejichž cesta iterace je uvnitř Iterace 1.
AND [Source].[System.IterationPath] UNDER '$$PROJECTNAME$$\Iteration 1'
Po vytvoření týmového projektu je makro nahrazeno názvem týmového projektu.
Pomocí tohoto makra lze definovat sešity, které odkazují na konkrétní cesty iterace.Šablona procesu pro agilní vývoj softwaru MSF obsahuje iterační dotaz Iteration1Backlog.wiq, který podporuje iterační sešit Iteration Backlog.xlsm.
Při odesílání iteračních dotazů musí být dokončena úloha zpracování souboru Classification.xml, aby bylo možné zpracovat soubory dotazů.Další informace naleznete v tématu Definice počátečních oblastí a iterací v modulu plug-in pro klasifikaci a Definování kořenových úloh pomocí souboru modulu plug-in šablony procesu.
Příklad iteračního dotazu na pracovní položky
Následující příklad znázorňuje dotaz na pracovní položky Iteration1Backlog, který podporuje sešit nevyřízených položek iterace.
<?xml version="1.0" encoding="utf-8"?>
<WorkItemQuery Version="1">
<Wiql>
SELECT [System.Id],
[System.WorkItemType],
[System.Title],
[System.State],
[System.AssignedTo],
[Microsoft.VSTS.Scheduling.RemainingWork],
[Microsoft.VSTS.Scheduling.CompletedWork],
[Microsoft.VSTS.Scheduling.StoryPoints],
[Microsoft.VSTS.Common.StackRank],
[Microsoft.VSTS.Common.Priority],
[Microsoft.VSTS.Common.Activity],
[System.IterationPath],
[System.AreaPath]
FROM WorkItemLinks
WHERE (Source.[System.TeamProject] = @project
AND [Source].[System.AreaPath] UNDER @project
AND [Source].[System.IterationPath] UNDER '$$PROJECTNAME$$\Iteration 1'
AND (
Source.[System.WorkItemType] = 'User Story'
OR Source.[System.WorkItemType] = 'Task'
)
)
AND [System.Links.LinkType] = 'System.LinkTypes.Hierarchy-Forward'
AND [Target].[System.WorkItemType] = 'Task'
ORDER BY [Microsoft.VSTS.Common.StackRank], [Microsoft.VSTS.Common.Priority]
mode(Recursive)
</Wiql>
</WorkItemQuery>
Odkaz na element WorkItemQuery
Následující syntaxe zobrazuje strukturu elementu WorkItemQuery a jeho podřízených elementů.
<WorkItemQuery Version="1">
<TeamFoundationServer>collectionURL </TeamFoundatonServer>
<TeamProject>TeamProjectName </TeamProject>
<Wiql>
WorkItemQueryLanguage
</Wiql>
</WorkItemQuery>
Prvek |
Syntaxe |
Popis |
||
---|---|---|---|---|
TeamFoundationServer |
|
Volitelný podřízený element WorkItemQuery
Určuje identifikátor URI kolekce týmových projektů v následujícím formátu: http://Název_serveru: port/název_virtuálního_adresáře/CollectionName Pokud se nepoužívá virtuální adresář, použijte následující formát identifikátoru URI: http://Název_serveru: port / CollectionName Typ atributu je ServerNameType s maximální délkou 2047. |
||
TeamProject |
|
Volitelný podřízený element WorkItemQuery
Určuje týmový projekt, vůči kterému chcete dotaz spustit. Typ atributu je ProjectNameType s maximální délkou 255 znaků. |
||
Wiql |
|
Požadovaný podřízený element WorkItemQuery Určuje sekvenci příkazů SQL (Structured Query Language), které se chovají jako kritéria filtru a hledají sadu pracovních položek v týmovém projektu a vrací hodnoty, které jsou přiřazeny nastavenému počtu polí. Šablony procesu MSF poskytují několik příkladů příkazů SQL, které podporuje element Wiql.Tyto soubory jsou umístěny ve složce Queries uvnitř složky WorkItem Tracking. |