Существует ли макрос запроса TFS для текущей итерации? - PullRequest
30 голосов
/ 19 января 2010

Есть ли способ в TFS в VS2010, чтобы указать, что конкретная итерация является текущей, а затем вернуть ее для использования в запросах, аналогичных тому, как работает @Project? Если нет, то есть ли способ выполнять подзапросы в запросах рабочих элементов TFS?

Ответы [ 5 ]

20 голосов
/ 05 июня 2015

Похоже, что Microsoft слушала. @CurrentIteration - это , добавляемый в качестве токена .

Отлично, конечно. Однако при поиске запроса к текущему спринту вы рискуете потерять из виду незакрытые рабочие элементы в предыдущих спринтах. Когда вы достигаете @CurrentIteration, вы, вероятно, просто имеете в виду «всю незаконченную работу, которая была передана в спринт». Если вы отфильтруете один спринт, вы пропустите все отставшие, которых не удалось закрыть, или двинетесь вперед от предыдущих спринтов.

Рассмотрите возможность использования следующего шаблона, где «ScrumOfScrums \ Release 1.0.0.0 ″ - это ваш путь в бэклоге, а все ваши пути к спринту являются дочерними по отношению к этому:

TFS query of work items Under the backlog iteration node, but not equal to the backlog iteration node. Also not Closed.

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

Это также поймает все предметы, которые не были закрыты в ваших предыдущих спринтах. Поскольку цель состоит в том, чтобы закрыть каждый элемент в спринте перед переходом к следующему, этот шаблон запроса обычно будет лучше, чем использование @CurrentIteration, если только вы не хотите найти закрытые элементы в текущей итерации.

P.S. Хотя это старый вопрос, это был мой главный хит, когда я искал информацию о запросе текущей итерации в TFS.

20 голосов
/ 19 января 2010

Боюсь, что такого макроса нет. Лично у меня есть несколько командных запросов «X в текущей итерации», а затем редактирую эти запросы, чтобы указать новый путь итерации в начале каждой итерации.

6 голосов
/ 09 декабря 2010

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

- 2010-49
- Current
- 2010-51

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

Мне было бы очень интересно услышать отзывы об этом подходе!

4 голосов
/ 16 августа 2012

Запрос Sprint в интервале дат, как показано здесь:

    Team Project    =   @Project
And Work Item Type  =   Sprint
And Start Date  <=  @Today
And Finish Date >=  @Today
1 голос
/ 29 декабря 2010

Я обнаружил, что бесплатный Telerik Work Item Manager обеспечивает элегантное решение этой проблемы.

Просто определите свои запросы, как обычно, но не используйте фильтры, относящиеся к итерациям (обратите внимание, что это также относится к областям). Существует панель дерева, называемая «Фильтры области / итерации», которая добавит дополнительную рекурсивную фильтрацию на основе выбранной вами итерации (или области).

Обратите внимание, что если панель не видна, вы можете включить ее через меню Вид.

alt text

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...