定義要加入至流程範本的工作項目查詢

在 Team Explorer中建立工作項目查詢 (.wiq) 檔案最容易。 在現有的 Team 專案中,您可以使用 Team Explorer建立您要新增至流程範本中的所有工作項目查詢,然後依照本主題中的步驟,將每個查詢儲存為 .wiq 檔案。 如需如何建立工作項目查詢的詳細資訊,請參閱查詢工作項目

需求

  • 您必須是 [Readers] 群組的成員,或您對於查詢中每一個 Team 專案的 [檢視此節點中的工作項目] 使用權限必須設為 [允許],才能建立查詢。

  • 您必須如設定查詢的權限所述擁有適當的權限,才能將查詢儲存為小組查詢。

將工作項目查詢儲存為 .wiq 檔案

  1. 在 Team Explorer 中,開啟您要儲存的查詢。

  2. 在 [檔案] 功能表上,選擇 [另存 <查詢名稱> [查詢] 為]。

  3. 在 [另存查詢為] 對話方塊中,選擇 [檔案],然後指定 .wiq 檔案的位置與檔案名稱。 或者,選擇 [瀏覽],指定檔案名稱,瀏覽至您要儲存檔案的位置,然後選擇 [儲存]。

  4. 將檔案複製到 \WorkItem Tracking\Queries 資料夾,此資料夾位於流程範本下載後所存放的資料夾中。

  5. 在文字編輯器中開啟 .wiq 檔案。

  6. 移除 <TeamFoundationServer><TeamProject> 項目,這兩個項目會建立查詢與執行 Visual Studio Team Foundation Server 之特定伺服器和特定 Team 專案間的關聯,如下面範例所示:

    <TeamFoundationServer>CollectionURL</TeamFoundationServer>
    <TeamProject>ProjectName</TeamProject>
    
    注意事項注意事項

    您必須在文字編輯器中編輯 .wiq 檔案並移除 <TeamFoundationServer><TeamProject> 項目 (這兩個項目會建立查詢與特定伺服器和 Team 專案間的關聯)。否則,如果流程範本是上傳至其他伺服器,查詢將無法正確運作。或者,您也可以使用巨集,這樣查詢就不會包含目前 Team 專案的明確名稱,或是包含特定環境專用的其他任何值。

  7. 移除使用者特定的任何其他項目。

建立參考反覆項目路徑的工作項目查詢

您可以包含 Team 專案 $$PROJECTNAME$$ 的巨集和定義在 Classification 外掛程式檔案中的反覆項目路徑名稱,藉此定義會參考特定反覆項目路徑的查詢。 例如,下列語法指定只包含其反覆項目路徑在反覆項目 1 底下之工作項目的查詢。

AND  [Source].[System.IterationPath] UNDER '$$PROJECTNAME$$\Iteration 1'

在建立 Team 專案時,會用 Team 專案名稱取代巨集。

透過使用這個巨集,您可以定義會參考特定反覆項目路徑的活頁簿。 MSF Agile Software Development 流程範本包含的反覆項目特定查詢 Iteration1Backlog.wiq 支援反覆項目特定的活頁簿 Iteration Backlog.xlsm。

當您上傳反覆項目專用的查詢時,處理 Classification.xml 檔案的工作必須在處理查詢檔案的工作之前完成。 如需詳細資訊,請參閱在 Classification 外掛程式中定義初始區域和反覆項目使用流程範本外掛程式檔案定義根工作

反覆項目特定的工作項目查詢範例

下列範例顯示支援 [反覆項目中的待處理項目] 活頁簿的 Iteration1Backlog 工作項目查詢。

<?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>

WorkItemQuery 項目參考

下列語法顯示 WorkItemQuery 項目及其子項目的結構。

<WorkItemQuery Version="1">
   <TeamFoundationServer>collectionURL </TeamFoundatonServer>
   <TeamProject>TeamProjectName </TeamProject>
   <Wiql>
      WorkItemQueryLanguage
   </Wiql>
</WorkItemQuery>

項目

語法

描述

TeamFoundationServer

<TeamFoundationServer>collectionURL
</TeamFoundatonServer>

WorkItemQuery 的選擇性子項目。

重要

一般而言,您要從查詢中移除您新增至流程範本中的這個項目。

以下列格式指定 Team 專案集合中的 URI:

http://ServerName:Port/VirtualDirectoryName/CollectionName

如果不使用任何虛擬目錄,則針對 URI 使用下列格式:

http://ServerName:Port/CollectionName

屬性類型為長度上限為 2047 個字元的 ServerNameType

TeamProject

<TeamProject>TeamProjectName</TeamProject>

WorkItemQuery 的選擇性子項目。

重要

一般而言,您要從查詢中移除您新增至流程範本中的這個項目。

指定執行此查詢所依據的 Team 專案。

屬性類型為長度上限為 255 個字元的 ProjectNameType

Wiql

<Wiql>WorkItemQueryLanguage</Wiql>

WorkItemQuery 的必要子項目。

指定一連串的結構化查詢語言 (SQL) 命令,這些命令會當做篩選準則,以便在 Team 專案中尋找一組工作項目,然後傳回值,系統會將這些值指派到特定欄位數目。

MSF 流程範本會提供數個Wiql 項目所支援之 SQL 命令的範例。 這些檔案位於 [工作項目追蹤] 資料夾的 [查詢] 資料夾中。

請參閱

概念

查詢工作項目

使用工作項目追蹤外掛程式定義用於追蹤工作項目的物件