Запрос по дате или текущей итерации в Azure Boards
Azure DevOps Services | Azure DevOps Server 2022 — Azure DevOps Server 2019
Из этой статьи вы узнаете, как вывести список рабочих элементов на основе их создания, закрытия, разрешения или изменения. Можно указать дату или использовать поддерживаемый макрос. @Today
Используйте макрос и укажите плюс или минус число дней для относительных дат. Для запросов, которые перечисляют рабочие элементы на основе их назначения текущему спринту команды, используйте @CurrentIteration
.
Например, найдите рабочие элементы, которые были изменены за последние три дня с помощью следующего запроса.
Кроме того, макрос можно использовать CurrentIteration +/- _n_
для создания запросов на основе скользящего окна итерации команды.
Поддерживаемые операторы и макросы
Предложения запросов, указывающие поле DateTime или поле пути итерации, могут использовать операторы и макросы, перечисленные в следующей таблице.
Тип данных
Поддерживаемые операторы и макросы
Дата/время
= , <> , > , < , >= , <= , =[Field], <>[Field], >[Field], <[Field], >=[Field], <=[Field], In, Not In, Was Ever
Макросы: @StartOfDay
, , @StartOfMonth
@StartOfWeek
, @StartOfYear
и @Today
.
Вы можете использовать +/- _n_
каждый из поддерживаемых макросов.
TreePath
=, <>под, не под
Макросы: @CurrentIteration
1 и @CurrentIteration +/- n
2 допустимы с полем "Путь итерации".
Примечания:
@StartOfWeek
@StartOfMonth
Макросы@StartOfDay
и@StartOfYear
макросы поддерживаются для Azure DevOps Server 2019.1 и более поздних версий. Они поддерживаются только при запуске с веб-портала.- Макрос
@CurrentIteration +/- n
поддерживается для Azure DevOps Server 2019 и более поздних версий. Он поддерживается только при запуске с веб-портала.
Совет
Оператор WasEver
можно использовать с полем "Путь итерации", но только при определении с помощью синтаксиса WIQL. Пример см . в справочнике по синтаксису языка запросов рабочих элементов (WIQL).
Шаблон даты и времени
Шаблон даты и времени, который вы вводите для полей DateTime , должен совпадать с выбранным профилем. Чтобы просмотреть или изменить выбранный вариант, см. раздел "Настройка параметров пользователя".
Ограничения клиента на использование @CurrentIteration макросов
Макрос можно использовать @CurrentIteration
в запросе из следующих клиентов:
- Веб-портал, который подключается к Azure Boards
- Visual Studio 2019 или более поздней версии, подключенные к Azure Boards
- REST API
Макрос можно использовать @CurrentIteration +/- n
в запросе к Azure Boards, Azure DevOps Server 2019 и более поздних версиях, а также с rest API, который включает команду в качестве параметра. Например, @CurrentIteration('[Project]\Team')
.
Ошибка возникает @CurrentIteration
при открытии запроса, содержащего макрос в более ранних версиях Visual Studio, или из Microsoft Excel или Microsoft Project. Кроме того, макрос нельзя использовать при копировании или клонирования наборов тестов и тестовых вариантов, определении оповещений или с помощью REST API.
Запросы на основе дат
Фильтруйте рабочие элементы по дате их изменения или определенному периоду времени. Ограничить область запроса. Этот подход может помочь с производительностью, возвращая только результаты, которые соответствуют диапазону дат, который вы включили. Если вы не знакомы с созданием запросов, см. статью "Определение запроса рабочего элемента".
Не все поля допустимы для всех типов рабочих элементов. Переход к дате полей для набора полей , которые можно включить в запросы и типы рабочих элементов, к которым они применяются.
Совет
- Не забудьте ввести даты в поле "Шаблон даты", заданном для личного профиля.
- Чтобы понять, как
AND/OR
группируются предложения, см . статью "Предложения группы". Чтобы просмотреть синтаксис WIQL для запроса, установите расширение редактора WIQL, позволяющее просмотреть версию WIQL любой записи Редактор запросов.
Фильтр для
Включить эти предложения запросов
Элементы, созданные за последние 30 дней.
Элементы, измененные на определенную дату.
Элементы, разрешенные сегодня.
Элементы закрыты в течение указанного периода времени.
Элементы, которые не закрыты. Дата закрытия имеет значение NULL.
Элементы, состояние которых было обновлено за последнюю неделю.
Элементы закрыты во время текущего спринта. Макрос <xref href="CurrentIteration" data-throw-if-not-resolved="False" data-raw-source="@CurrentIteration"></xref>
ссылается на спринт, определенный для текущего контекста команды.
Создание запросов на основе даты и недели, месяца или года
В следующих примерах показано, как использовать StartOf...
макросы для фильтрации рабочих элементов с различными смещениями. Дополнительные сведения см. в синтаксисе языка запросов рабочих элементов (WIQL).
Примечание.
Требуется Azure DevOps Server 2019 с обновлением 1 или более поздней версии.
Фильтр для
Включить эти предложения запросов
Ошибки закрылись за последние две недели.
Элементы, измененные за последние 10 дней.
Функции, запланированные на выполнение в течение следующих трех месяцев.
Не все поля допустимы для всех типов рабочих элементов. Переход к дате полей для набора полей , которые можно включить в запросы и типы рабочих элементов, к которым они применяются.
Создание запросов для текущей итерации команды
Если ваша команда следует процессам Scrum, вы планируете выполнить работу в спринтах. Вы можете отслеживать ход выполнения требований, ошибок и других работ, которые необходимо выполнить в текущем спринте с помощью @CurrentIteration
макроса. Дополнительные сведения см. в разделе "Управление временными шкалами спринта".
Запрос находит любой элемент, назначенный спринту, который соответствует текущему пути итерации для команды. Например, если команда находится на Sprint 5, запрос возвращает элементы, назначенные Sprint 5. Позже, когда команда работает в Sprint 6, тот же запрос возвращает элементы, назначенные Sprint 6.
Примечание.
@CurrentIteration
Чтобы макрос работал, команда должна выбрать путь итерации, диапазон дат которого охватывает текущую дату. Дополнительные сведения см. в разделе "Выбор спринтов команды" и настройка пути итерации по умолчанию. Кроме того, запросы, содержащие этот макрос, допустимы только при запуске с веб-портала.
См. также Client restrictions on the use of the @CurrentIteration macros ранее в этой статье.
Azure Boards добавляет параметр команды при выборе макросов @CurrentIteration или @CurrentIteration +/- n . Параметр команды является производным от текущего контекста команды.
Совет
@CurrentIteration
Если макрос не работает, убедитесь, что для вашей команды выбрана ожидаемая итерация, а для нее заданы даты. Дополнительные сведения см. в разделе "Выбор спринтов команды".
Чтобы изменить параметр команды, который система автоматически задает, выберите его, введя имя команды в поле параметра, добавленном под макросом @CurrentIteration .
Создание скользящего окна запроса итерации команды
@CurrentIteration +/- n
Используйте макрос, если вы хотите отслеживать работу команды, запланированной для предстоящих спринтов, и для понимания работы, которая не была завершена в предыдущих спринтах.
Примечание.
@CurrentIteration +/- n
Чтобы макрос работал, команда должна выбрать пути итерации, соответствующие +/- n
критериям. Диапазоны дат должны охватывать текущую дату.@CurrentIteration
Дополнительные сведения о выборе путей итерации команды см. в разделе "Выбор спринтов команды" и установка пути итерации по умолчанию.
См. также Client restrictions on the use of the @CurrentIteration macros ранее в этой статье.
На следующем рисунке показано, как перечислить все типы рабочих элементов пользовательской истории и ошибки, назначенные скользящему окну. Окно охватывает последние два, текущее и следующие два спринта, выбранные для команды "Администратор облака" и "Сервис".
Чтобы использовать этот макрос, указанная команда должна выбрать набор спринтов , охватывающих +/- n
значение, введенное для макроса.
Вывод списка рабочих элементов из спринта
Вывод списка рабочих элементов, определенных для спринта, но позже перенесен с помощью запроса с предложением, содержащим Was Ever
оператор для поля "Путь итерации". Этот запрос можно создать только с помощью синтаксиса WIQL. Измените синтаксис WIQL в Редактор запросов, установив расширение WIQL Editor Marketplace.
Например, следующие синтаксические запросы для рабочих элементов соответствуют следующим критериям:
- Определен в текущем проекте.
- Тип рабочего элемента равен "История пользователя" или "Ошибка".
- Рабочие элементы находятся в разделе "Путь к области веб-группы Fabrikam Fibre".
- Рабочие элементы не являются в
Closed
состоянии ,Completed
Cut
илиResolved
в состоянии. - Не в текущем пути итерации для команды Fabrikam Fibre Web.
- Были назначены текущему пути итерации для команды Fabrikam Fibre Web.
- Теперь назначены текущей итерации +1 для команды Fabrikam Fibre Web.
- Были изменены за последние 30 дней (длина спринта).
SELECT
[System.Id],
[System.WorkItemType],
[System.AssignedTo],
[System.Title],
[System.State],
[System.Tags],
[System.IterationPath],
[System.AreaPath]
FROM workitems
WHERE
[System.TeamProject] = @project
AND [System.WorkItemType] IN ('User Story', 'Bug')
AND [System.AreaPath] UNDER 'FabrikamFiber\Web'
AND NOT [System.State] IN ('Completed', 'Closed', 'Cut', 'Resolved')
AND NOT [System.IterationPath] = @currentIteration('[FabrikamFiber]\Web <id:cdf5e823-1179-4503-9fb1-a45e2c1bc6d4>')
AND (
EVER (
[System.IterationPath] = @currentIteration('[FabrikamFiber]\Web <id:cdf5e823-1179-4503-9fb1-a45e2c1bc6d4>')
)
AND [System.IterationPath] = @currentIteration('[FabrikamFiber]\Web <id:cdf5e823-1179-4503-9fb1-a45e2c1bc6d4>') + 1
AND [System.ChangedDate] >= @today - 30
)
ORDER BY [System.Id]
Отображается Редактор запросов представление синтаксиса, как показано ниже.
Примечание.
В Редактор запросов отображается значок сведений рядом с Was Ever
оператором, указывающий на проблему с предложением. Однако запрос по-прежнему выполняется и вы можете создавать диаграммы запросов. Чтобы изменить запрос, необходимо использовать редактор WIQL.
Вывод списка рабочих элементов, добавленных в спринт после даты начала
Чтобы получить список только что созданных рабочих элементов, добавленных в спринт после даты начала, используйте запрос, аналогичный приведенному на следующем рисунке. Этот запрос работает путем фильтрации рабочих элементов, назначенных текущему спринту, но были созданы после начала даты спринта. Используйте предложение created Date = @Today - 28
.
Другие варианты запроса изменений в области спринта см. в статье об изменении области Sprint.
Поля "Путь к дате и итерации"
Используйте поля даты для фильтрации запросов. Некоторые из этих полей заполняются информацией, так как рабочий элемент выполняется из одного состояния в другое. Некоторые из этих полей не отображаются в форме рабочего элемента, но они отслеживаются для этих типов рабочих элементов, перечисленных в следующей таблице.
Имя поля
Description
Типы рабочих элементов
Дата активации (заметки 1 и 2)
Дата и время создания рабочего элемента или когда его состояние было изменено с Closed
, Completed
либо Done
на New
состояние или Active
состояние.
Имя ссылки=Microsoft.VSTS.Common.ActivatedDate, тип данных=DateTime
Ошибка, запрос на изменение, эпическая, функция, проблема, элемент невыполненной работы продукта, требование, проверка, риск, общий шаг, задача, тестовый случай, история пользователя
Дата изменения
Дата и время изменения рабочего элемента.
Reference name=System.ChangedDate, Data type=DateTime
Все
Дата закрытия (примечание 2)
Дата и время закрытия рабочего элемента.
Эталонное имя=Microsoft.VSTS.Common.ClosedDate, тип данных=DateTime
Все
Дата создания
Дата и время создания рабочего элемента.
Reference name=System.CreatedDate, Data type=DateTime
Все
Срок
Прогнозируемая дата выполнения для устранения проблемы.
Эталонное имя=Microsoft.VSTS.Scheduling.DueDate, тип данных=DateTime
Проблема (гибкая)
Дата окончания (примечание 3)
Дата и время завершения задачи.
Эталонное имя=Microsoft.VSTS.Scheduling.FinishDate, тип данных=DateTime
Требования, задача, тестовый план, история пользователя
Путь итерации
Группирует рабочие элементы по именованным спринтам или периодам времени. Итерация должна быть допустимым узлом в иерархии проекта. Вы определяете пути итерации для проекта и выбираете пути итерации для команды.
Reference name=System.IterationPath, Data type=TreePath
Все
Разрешенная дата (заметки 1 и 2)
Дата и время перемещения рабочего элемента в Resolved
состояние.
Эталонное имя=Microsoft.VSTS.Common.ResolvedDate, тип данных=DateTime
Ошибка, запрос на изменение, эпическая, функция, проблема, элемент невыполненной работы продукта, требование, проверка, риск, общий шаг, задача, тестовый случай, история пользователя
Дата начала (примечание 3)
Дата и время начала задачи.
Примечание.
Планы доставки используют поля "Дата начала" и "Целевая дата" для отображения диапазона функций, эпических и других элементов невыполненного портфеля.
Эталонное имя=Microsoft.VSTS.Scheduling.StartDate, тип данных=DateTime
Epic, Feature, Requirement, Task, Test Plan, User Story
Дата изменения состояния
Дата и время изменения значения поля State .
Эталонное имя=Microsoft.VSTS.Common.StateChangeDate, тип данных=DateTime
Все
Целевая дата
Дата завершения или устранения проблемы компонента, рабочего элемента или проблемы.
Примечание.
Планы доставки используют поля "Дата начала" и "Целевая дата" для отображения диапазона функций, эпических и других элементов невыполненного портфеля.
Эталонное имя=Microsoft.VSTS.Scheduling.TargetDate, тип данных=DateTime
Epic, Feature
Примечания:
См. также запрос по изменениям назначения или рабочего процесса.
Для определения этих полей для типа рабочего элемента они должны быть включены в
WORKFLOW
раздел определения типа рабочего элемента. Например, этот синтаксис включается вFIELDS
определение при переходе к состояниюResolved
.<FIELD refname="Microsoft.VSTS.Common.ResolvedDate" /> <SERVERDEFAULT from="clock" /> </FIELD >
Значения даты начала и окончания вычисляются, если вы создаете план проекта в Project, а затем синхронизируете этот план с задачами, хранящимися в Azure Boards. Эти поля могут не отображаться в форме рабочего элемента, но они вычисляются для элементов невыполненной работы и задач, связанных с элементами невыполненной работы. Их значения доступны только для чтения в результатах запроса или из Excel.
Внимание
Интеграция Microsoft Project и
TFSFieldMapping
команда не поддерживаются для:- Visual Studio 2019 и Azure DevOps Office Integration 2019.
- Azure DevOps Server 2019 и более поздних версий, включая Azure DevOps Services.
Поддерживается полная поддержка интеграции Microsoft Excel, что позволяет выполнять массовый импорт и обновление рабочих элементов. К альтернативным вариантам использования Microsoft Project относятся:
- Планы выполнения
- Расширения Marketplace, такие как диаграмма Project Connect или GANTT
Связанные статьи
- Запрос по назначению или изменению рабочего процесса
- Определение путей итерации (спринта) и настройка итерации команды
- Определение запроса рабочего элемента в Azure Boards
- Поля запросов, операторы и макросы
- Поля и атрибуты рабочих элементов
- Синтаксис языка запросов рабочих элементов (WIQL)
REST API
Сведения о программном взаимодействии с запросами см. в одном из следующих ресурсов REST API: