Поделиться через


Определение запроса рабочего элемента для добавления в шаблон процесса

Создавать файлы запросов рабочих элементов (WIQ) в Сред. Командный обозреватель очень легко. В имеющемся командном проекте можно с помощью Сред. Командный обозреватель создать все запросы рабочих элементов, которые требуется добавить в шаблон процесса, после чего выполнить приведенные в этом разделе инструкции, чтобы сохранить каждый запрос в виде WIQ-файла. Дополнительные сведения о том, как создавать запросы рабочих элементов, см. в разделе Задание условия фильтрации запроса.

Содержание раздела

  • Сохранение запроса рабочего элемента в WIQ-файле

  • Создание запроса рабочего элемента, ссылающегося на путь итерации

  • Пример запроса рабочего элемента для конкретной итерации

  • Справка по элементу WorkItemQuery

Необходимые разрешения

Для создания запроса необходимо быть членом группы Читатели, либо разрешение Просмотр рабочих элементов на этом узле должно иметь значение Разрешить для каждого командного проекта в запросе. Чтобы сохранить запрос как командный, необходимо обладать соответствующими разрешениями. Дополнительные сведения см. в разделе Организация и настройка разрешений для запросов рабочих элементов.

Сохранение запроса рабочего элемента в 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$$) и имя пути итерации, определенное в файле подключаемого модуля Classification. Например, следующий синтаксис задает запрос, включающий только те рабочие элементы, путь итерации которых указывает на итерацию 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://имя_сервера:порт/имя_виртуального_каталога/имя_коллекции

Если виртуальный каталог не используется, следует использовать универсальный код ресурса (URI) в следующем формате:

http://имя_сервера:порт/имя_коллекции

Атрибут имеет тип ServerNameType и максимальную длину 2047.

TeamProject

<TeamProject>TeamProjectName</TeamProject>

Необязательный дочерний элемент элемента WorkItemQuery.

Важное примечаниеВажно
В общем случае этот элемент удаляется из запросов, добавляемых в шаблоны процессов.

Задает командный проект, для которого выполняется запрос.

Атрибут имеет тип ProjectNameType и максимальную длину 255 знаков.

Wiql

<Wiql>WorkItemQueryLanguage</Wiql>

Обязательный дочерний элемент элемента WorkItemQuery.

Задает последовательность команд языка SQL, выступающих в роли условий фильтра для обнаружения набора рабочих элементов в командном проекте и возврата значений, присвоенных определенному набору полей.

В шаблонах процессов MSF имеется несколько примеров команд SQL, поддерживаемых элементом Wiql. Эти файлы расположены в подпапке Queries папки WorkItem Tracking. Дополнительные сведения об определении запросов см. в разделе Поиск ошибок, задач и прочих рабочих элементов.

К началу

См. также

Основные понятия

Поиск ошибок, задач и прочих рабочих элементов

Другие ресурсы

Определение и настройка объектов для отслеживания рабочих элементов с помощью подключаемого модуля отслеживания рабочих элементов

Журнал изменений

Дата

Журнал

Причина

Апрель 2011

Описан каждый элемент WorkItemQuery, удалены ссылки на удаленные разделы.

Улучшение информации.