定义要添加到过程模板中的工作项查询

更新:2011 年 4 月

可在团队资源管理器中很轻松地创建工作项查询 (.wiq) 文件。 在现有团队项目中,您可以使用团队资源管理器创建要添加到过程模板的所有工作项查询,然后按照本主题中的步骤将每个查询另存为 .wiq 文件。 有关如何创建工作项查询的更多信息,请参见指定查询筛选条件

主题内容

  • 将工作项查询另存为 .Wiq 文件

  • 创建引用迭代路径的工作项查询

  • 特定于迭代的工作项查询示例

  • WorkItemQuery 元素参考

所需权限

若要创建查询,您必须是**“ Readers (访问者)”组的成员,或者您对查询中每个团队项目的“查看此节点中的工作项”权限必须设置为“允许”**。 若要将查询另存为团队查询,您必须具有适当的权限。 有关更多信息,请参见组织和设置工作项查询的权限

将工作项查询另存为 .Wiq 文件

将工作项查询保存到 .wiq 文件

  1. 在团队资源管理器中,右击查询,然后单击**“查看查询”**。

  2. 在**“文件”菜单上,单击“<查询名称> [查询] 另存为”**。

  3. 在**“将查询另存为”对话框中,单击“文件”,然后指定 .wiq 文件的位置和文件名。 或者,还可以单击“浏览”,指定文件名,浏览到要保存文件的位置,然后单击“保存”**。

  4. 将文件复制到 \WorkItem Tracking\Queries 文件夹中,该文件夹位于下载过程模板的文件夹中。

  5. 在文本编辑器中打开 .wiq 文件。

  6. 移除**“<TeamFoundationServer>”“<TeamProject>”**元素,这两个元素将查询与运行 Visual Studio Team Foundation Server 的特定服务器和特定团队项目关联,如以下示例所示:

    <TeamFoundationServer>CollectionURL</TeamFoundationServer>
    <TeamProject>ProjectName</TeamProject>
    

    提示

    必须在文本编辑器中编辑 .wiq 文件并移除将查询与特定服务器和团队项目关联的“<TeamFoundationServer>”“<TeamProject>”元素。 否则,当将过程模板上载到其他服务器时,查询将不能正常工作。 或者,也可以在可使用宏的地方使用它,以便查询不包含当前团队项目的显式名称或任何其他特定于某个环境的值。

  7. 移除特定于某用户的任何其他元素。

返回页首

创建引用迭代路径的工作项查询

通过包括团队项目 $$PROJECTNAME$$ 的宏以及在分类插件文件中定义的迭代路径的名称,可以定义引用特定迭代路径的查询。 例如,以下语法指定只包括那些迭代路径位于迭代 1 下的工作项的查询。

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

创建团队项目时,宏将替换为团队项目的名称。

通过使用此宏,您可以定义引用特定迭代路径的工作簿。 MSF 敏捷软件开发的过程模板包含一个特定于迭代的查询 Iteration1Backlog.wiq,该查询支持特定于迭代的工作簿 Iteration Backlog.xlsm。

上载特定于迭代的查询时,处理 Classification.xml 文件的任务必须在处理查询文件的任务之前完成。 有关更多信息,请参见在分类插件中定义初始区域和迭代使用过程模板插件文件定义根任务

返回页首

特定于迭代的工作项查询示例

下面的示例演示了支持“迭代积压工作”工作簿的 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 的可选子元素。

重要说明重要事项
一般而言,可从添加到过程模板的查询移除此元素。

指定以下格式的团队项目集合的 URI:

http://ServerName:Port/VirtualDirectoryName/CollectionName

如果未使用虚拟目录,则对 URI 使用以下格式:

http://ServerName:Port/CollectionName

特性类型是 ServerNameType,其最大长度为 2047 个字符。

TeamProject

<TeamProject>TeamProjectName</TeamProject>

WorkItemQuery 的可选子元素。

重要说明重要事项
一般而言,可从添加到过程模板的查询移除此元素。

指定要对其运行查询的团队项目。

特性类型是 ProjectNameType,其最大长度为 255 个字符。

Wiql

<Wiql>WorkItemQueryLanguage</Wiql>

WorkItemQuery 的必需子元素。

指定作为筛选条件的结构化查询语言 (SQL) 命令序列,以在团队项目中查找一组工作项并返回分配给一定数量的字段的值。

MSF 过程模板提供了 Wiql 元素支持的 SQL 命令的几个示例。 这些文件位于 WorkItem Tracking 文件夹的 Queries 文件夹中。 有关如何定义查询的更多信息,请参见查找 Bug、任务和其他工作项

返回页首

请参见

概念

查找 Bug、任务和其他工作项

其他资源

使用 WorkItemTracking 插件来定义和自定义用于跟踪工作项的对象

修订记录

日期

修订记录

原因

2011 年 4 月

介绍了每个 WorkItemQuery 元素,并移除了指向已删除主题的链接。

信息补充。