Поля запросов, операторы и макросы в Azure Boards

Azure DevOps Services | Azure DevOps Server 2022 - Azure DevOps Server 2019 | TFS 2018

Здесь вы найдете подробные описания каждого типа данных поля, операторов запросов и макросов запросов. Некоторые типы данных, операторы и макросы допустимы только для указанной версии Azure DevOps Server или Team Foundation Server (TFS).

Краткие сведения о задачах запроса, операторах и макросах, поддерживаемых для каждого типа данных, см. в статье Краткий справочник по запросам. Советы по созданию высокопроизводительных запросов см. в статье Руководство по созданию высокопроизводительных запросов.

Типы данных и значения полей запроса

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

Примечание

Для Azure Boards облачной службы тип данных соответствует типу данных, указанному для поля на странице Поля обработки>. Для локальных развертываний тип данных соответствует атрибуту type , назначенному FIELD определению. Дополнительные сведения см. в разделе Поля и атрибуты полей рабочих элементов.

Data type

Описание

Boolean

Указывает поле, которое принимает значение True или False.

DateTime или Date/Time

Поле даты, в котором можно указать переменную, например @Today или @Today-1, или значение, например 01.01.2012. Введите даты в шаблон даты, заданный для личного профиля. (Дополнительные сведения см. в разделе Настройка личных настроек .) Примеры запросов см. в разделе Запрос по дате or@CurrentIteration.

Для запросов WIQL можно также указать дату в формате UTC. Дополнительные сведения см. в разделе Синтаксис для языка запросов рабочих элементов (WIQL).

Double или Decimal

Действительное число, например 0,2 или 3,5. Примеры запросов см. в разделе Запрос по числовым полям.

GUID

Строка знаков, представляющая уникальное значение ИД.

Журнал

Поле со специальным форматом, используемое для отслеживания информации журнала. Этот тип данных используется только для поддержки поля Журнала . Это поле автоматически индексируется для полнотекстового поиска, если полнотекстовый поиск доступен. См. раздел Полнотекстовый и частичный поиск по словам , описанный далее в этой статье. Примеры запросов см. в разделе Журнал и аудит.

HTML

Текстовые строки, поддерживающие форматированные описания, такие как поля Описание или Шаги воспроизведения . Эти поля автоматически индексируются для полнотекстового поиска, если полнотекстовый поиск доступен. См. раздел Полнотекстовый и частичный поиск по словам , описанный далее в этой статье. Сведения о запросах полей форматированного текста см. в статье Запрос по заголовкам, идентификаторам и полям форматированного текста.

Удостоверение

Короткая текстовая строка, идентифицирующая удостоверение пользователя.

Целое число

32-битовое знаковое целое число, например 0, 1, 2, 34.

Поле PlainText или Text (многострочное)

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

picklistDouble1

Настраиваемое поле, определенное для хранения списка выбора десятичных значений.

picklistInteger1

Настраиваемое поле, определенное для хранения списка выбора целочисленных значений.

picklistString1

Настраиваемое поле, определенное для хранения списка выбора коротких текстовых строк (255 символов или меньше) значений.

Строковое или текстовое поле (однострочное)

Короткая текстовая строка, содержащая до 255 символов Юникода. Строковые текстовые поля часто используются для поддержки списков выбора или раскрывающихся меню.

Путь к дереву

Древовидная структура, например, "Путь области" или "Путь итерации". Выберите элемент из списка допустимых значений. Найдите рабочие элементы, которые равны, не равны, под или не находятся под древовидной структурой, или используйте операторы In или Not In, чтобы указать несколько значений. Вы определяете древовидную структуру проекта (пути к областям и пути итерации), а затем выбираете те из них, которые нужно связать с командой.

Дополнительные сведения о создании запросов см. в разделах Запрос по области или пути итерации или Запрос по дате или текущей итерации.

Примечание

  1. Типы данных picklist... назначаются только настраиваемым полям, определенным для наследуемого процесса. Модель наследуемого процесса поддерживается только для Azure DevOps Services и Azure DevOps Server 2019.

Шаблон даты и времени

Шаблон даты и времени, который вы вводите для полей DateTime , должен соответствовать шаблону, выбранному в профиле. Сведения о том, как просмотреть или изменить выбранные параметры, см. в разделе Настройка параметров пользователя, Время и языковой стандарт.

Страница

Страница времени и языкового стандарта, параметры шаблона даты

Операторы запроса

Операторы запроса, приведенные в таблице, служат для определения зависимости между значением предложения и значением рабочего элемента. Сведения о типе данных, назначенном полям рабочего элемента, см. в статье Справочник по полю рабочего элемента.

Дополнительные сведения о добавлении предложений и использовании операторов And/Or см. в статье Определение логического выражения запроса и/или.

Оператор запроса

Возвращает рабочие элементы, если значение рабочего элемента совпадает с указанным критерием.

Применимые типы данных

=

Совпадает со значением предложения.

Число, которое включает Double, GUID, Integer и String, DateTime и TreePath.

<>

Не соответствует значению в предложении .

Number, String, DateTime и TreePath

>

Больше значения предложения.

Number, String и DateTime

<

Меньше значения предложения.

Number, String и DateTime

>=

Больше или равно значению предложения.

Number, String и DateTime

<=

Меньше или равно значению предложения.

Number, String и DateTime

=[Поле]

Совпадает со значением в указанном поле.

Имя поля, принадлежащего к тому же типу данных, что и указанное поле

<>[Поле]

Не соответствует значению, которое содержится в указанном поле.

Имя поля, принадлежащего к тому же типу данных, что и указанное поле

>[Поле]

Больше значения в указанном поле.

Имя поля, принадлежащего к тому же типу данных, что и указанное поле

<[Поле]

Меньше значения в указанном поле.

Имя поля, принадлежащего к тому же типу данных, что и указанное поле

>=[Поле]

Больше или равно значению в указанном поле.

Имя поля, принадлежащего к тому же типу данных, что и указанное поле

<=[Поле]

Меньше или равно значению в указанном поле.

Имя поля, принадлежащего к тому же типу данных, что и указанное поле

Содержит

Содержит точные или частичные совпадения со строкой текста в поле, выбранном для фильтрации.

String

Не содержит

Не содержит точного или частичного соответствия текстовой строки в поле, выбранном для фильтрации.

String

Содержит слова

Содержит точное совпадение с строкой текста или словами в поле, выбранном для фильтрации. Можно также вводить части слов или фразы, содержащие подстановочный знак *. Длина текстовой строки ограничена 100 символами. Ограничения см. в разделе Полнотекстовый поиск требований к серверу и параметрам сортировки.

Длинные текстовые поля, индексированные для полнотекстового поиска, которые соответствуют всем полям PlainText и HTML , а также полям Журнала и Заголовка .

Не содержит слов

Не содержит точную текстовую строку или слова в поле, выбранном для фильтрации. Длина текстовой строки ограничена 100 символами.

Используйте этот оператор в сочетании с предложением с оператором Contains Words для включения и исключения определенных ключевых слов.

Текстовые поля, которые индексируются для полнотекстового поиска.

Где

Совпадает с любым значением в наборе с разделителями. Например, можно найти рабочие элементы, с ИД 100, 101 и 102, если эти значения определены для поля ИД. Разделяйте значения разделителем элементов списка, соответствующим региональным параметрам на клиентском компьютере. Например, можно использовать запятую (,).

Number, String, DateTime, TreePath

Является пустым

Список рабочих элементов, содержащих пустое поле HTML. Значение с помощью этого оператора не указывается. Этот оператор поддерживается для Azure Boards (облачная служба), Azure DevOps Server 2019 и более поздних версий.

HTML

Не пуст

Перечисляет рабочие элементы, содержащие некоторое содержимое в поле HTML. Значение с помощью этого оператора не указывается. Этот оператор поддерживается для Azure Boards (облачная служба), Azure DevOps Server 2019 и более поздних версий.

HTML

Не входит

Не соответствует ни одному значению в наборе с разделителями. Рабочие элементы, состояния которых не разрешены, завершены или закрыты, можно исключить из результатов запроса, если указать эти значения для поля Состояние. Разделяйте значения разделителем элементов списка, соответствующим региональным параметрам на клиентском компьютере. Например, можно использовать запятую (,).

Оператор Not In доступен в Azure Boards и TFS 2018.2 и более поздних версиях.

Number, String, DateTime, TreePath

В группе

Совпадает со значением, являющимся членом группы в предложении. Группы соответствуют имени команды, группы безопасности или категории отслеживания работы. Например, можно создать запрос для поиска всех рабочих элементов, назначенных членам группы "Участники" или команде. Группы команды создаются при создании команды. Имя групп команды соответствует шаблону [Имя командного проекта]\Имя команды.

Примеры запросов см. в разделе Запрос по назначению или изменениям рабочего процесса.

Строка , соответствующая имени команды, группы безопасности или категории, определенной в системе.

Примечание

Оператор In Group можно использовать только с полями, которые используют тип данных String или Тип рабочего элемента . Вы также можете использовать группы, определенные в Azure Active Directory (Azure AD), если ваша учетная запись Azure Boards поддерживается Azure AD, или Active Directory, когда локальный экземпляр сервера поддерживается Active Directory.

Сведения о группах категорий см. в разделе Использование категорий для группирования типов рабочих элементов.

Не в группе

Не соответствует значению, которое является членом группы в предложении .

Строка , соответствующая имени группы пользователей в Team Foundation Server или группе категорий, определенной для проекта.

Примечание

Оператор Not In Group можно использовать только с полями, которые используют тип данных String или Тип рабочего элемента . Вы также можете использовать группы, определенные в Azure AD, если учетная запись Azure Boards поддерживается Azure AD, или Active Directory, если локальный экземпляр сервера поддерживается Active Directory.

Не в группе

Не соответствует значению в предложении и не содержится в узле в предложении .

Путь к дереву

Под

Совпадает со значением в предложении или содержится в предложении под узлом.

Путь к дереву

Всегда

Совпадает со значением в предложении по любому из перечисленных выше пунктов.

Строка , DateTime

Совет

Запрос можно создать с помощью синтаксиса WIQL, который использует оператор, например Was Ever, для других полей типа данных, отличных от перечисленных. Например, вы можете использовать Was Ever в предложении с помощью пути итерации. Пример см. в разделе Запрос по дате или текущей итерации, Перечисление рабочих элементов, перемещенных из спринта.

Запрос макросов или переменных

Вы можете использовать макросы, описанные в следующей таблице, для фильтрации запросов по конкретным полям.

Примечание

На веб-портале поддерживаются только следующие макросы: @CurrentIteration, @CurrentIteration +/- n, @Follows, @MyRecentActivity, @RecentMentions, @RecentProjectActivity и @TeamAreas. Запросы, содержащие эти макросы, не будут работать при открытии в Visual Studio или Team Explorer, Microsoft Excel или Microsoft Project.


Макрос

Описание


[Любой]

Используйте с полями Тип рабочего элемента или Состояние для поиска по всем типам рабочих элементов или по всем состояниям. Например, Work Item Type=[Any] не будет размещать фильтры на основе типа рабочего элемента.


@CurrentIteration

Используйте с полем Путь итерации для автоматической фильтрации рабочих элементов, назначенных текущему спринту на основе текущего фокуса или контекста команды. Конкретные примеры см. в разделе Запрос по дате или текущей итерации.
Макрос @CurrentIteration работает только при запуске с веб-портала. Макрос нельзя использовать при копировании или клонировании наборов тестов и тестовых случаев, определении оповещений или при использовании REST API.


@CurrentIteration +/- n

Используйте с полем Путь итерации для фильтрации набора рабочих элементов, назначенных текущему спринту +/- n , на основе текущего фокуса или контекста команды. Конкретные примеры см. в разделе Запрос по дате или текущей итерации.
Макрос @CurrentIteration +/- n поддерживается для Azure Boards, Azure DevOps Server 2019 и более поздних версий и только при запуске с веб-портала.


@Follows

Используйте с полем идентификатора и оператором In , чтобы вывести список всех рабочих элементов, которые вы выполняете в проекте. Дополнительные сведения о функции Подписки см. в статье Отслеживание рабочего элемента или запроса на вытягивание. Этот же список можно просмотреть на странице "Рабочие элементы" в представлении "Следующие сведения".
Макрос @Follows поддерживается только при запуске с веб-портала.


@Me

Используйте с полем удостоверения или учетной записи пользователя для автоматического поиска элементов, связанных с именем пользователя или учетной записи. Например, можно найти рабочие элементы, открытые с помощью предложения Created By=@Me. Дополнительные примеры см. в статье Запрос по назначениям, рабочим процессам или изменениям канбан-доски.


@MyRecentActivity1

Используйте с полем идентификатора и оператором In для вывода списка рабочих элементов, которые вы просматривали или обновляли в проекте за последние 30 дней. Этот же список можно просмотреть на странице "Рабочие элементы" в представлении сведений о моих действиях.


@Project

Используйте с полем Командный проект для фильтрации рабочих элементов в других проектах. Например, можно найти все рабочие элементы в выбранном проекте с помощью предложения Team Project=@Project. Система автоматически выполняет фильтрацию по умолчанию на основе текущего проекта. Дополнительные сведения см. в статье Определение запроса и запрос по проектам.


@RecentMentions1

Используйте с полем идентификатора и оператором In для вывода списка рабочих элементов, упомянутых в разделе Обсуждение. Этот же список можно просмотреть на странице "Рабочие элементы" в представлении сводной таблицы "Упомянутые".


@RecentProjectActivity1

Используйте с полем идентификатора и оператором In для вывода списка недавно обновленных рабочих элементов. Количество перечисленных рабочих элементов зависит от действий по отслеживанию работы проекта. Для высокоактивных проектов макрос выводит список рабочих элементов, которые были обновлены в проекте за последние 30 дней или около того. Однако для менее активных проектов этот список может включать рабочие элементы старше 30 дней. Аналогичные списки можно просмотреть на странице Рабочие элементы, Недавно созданные, Недавно обновленные и Недавно завершенные сводные представления. Количество возвращаемых рабочих элементов ограничено 5000.


@StartOfDay2

Используйте с полем DateTime для фильтрации рабочих элементов, связанных с текущей датой или со смещением плюс/минус. Например, можно найти все элементы, закрытые за последнюю неделю, с помощью предложения Closed Date>=@StartOfDay-7. Дополнительные примеры см. в разделе Запрос по дате или текущей итерации.


@StartOfMonth2

Используйте с полем DateTime для фильтрации рабочих элементов, относящихся к текущему месяцу или со смещением плюс/минус. Например, можно найти все элементы, созданные за последние три месяца, с помощью предложения Created Date>=@StartOfMonth-3. Дополнительные примеры см. в разделе Запрос по дате или текущей итерации.


@StartOfWeek2

Используйте с полем DateTime для фильтрации рабочих элементов, относящихся к текущей неделе или со смещением плюс/минус. Например, можно найти все элементы, измененные за последние две недели, с помощью предложения Changed Date>=@StartOfWeek-2. Дополнительные примеры см. в разделе Запрос по дате или текущей итерации.


@StartOfYear2

Используйте с полем DateTime для фильтрации рабочих элементов, относящихся к текущему году или со смещением плюс/минус. Например, можно найти все функции, для которых целевая дата запланирована в течение текущего года, с помощью предложения Target Date>=@StartOfYear. Дополнительные примеры см. в разделе Запрос по дате или текущей итерации.


@TeamAreas

Используйте только с полем Путь к области для фильтрации рабочих элементов, путь к области которых соответствует одному, назначенному определенной команде. Требует использования = оператора . Например, можно найти все элементы, назначенные путям к областям, назначенным веб-команде с помощью предложения Area Path=@TeamAreas [Fabrikam Fiber]\Web. Дополнительные примеры см. в разделе Запрос по области или пути итерации.
Макрос @TeamAreas поддерживается для Azure DevOps Server 2019 и более поздних версий и только при запуске с веб-портала.


@Today

Используйте с полем DateTime для фильтрации рабочих элементов, связанных с текущей или более ранней датой. Вы также можете изменить макрос @Today путем вычитания дней. Например, можно найти все элементы, созданные за последнюю неделю, с помощью предложения Created Date>=Today-7. Дополнительные примеры см. в разделе Запрос по дате или текущей итерации.


Примечание

  1. Макросы @MyRecentActivity, @RecentMentions и @RecentProjectActivity поддерживаются для TFS 2018.2 и более поздних версий.
  2. Макросы @StartOfDay, @StartOfWeek, @StartOfMonth и @StartOfYear поддерживаются для Azure DevOps Server 2019 с обновлением 1 и более поздних версий.

Полнотекстовый поиск и поиск по частям слов

Укажите Содержит или Не содержит для поиска точных или частичных совпадений слова или фразы. Эти операторы фильтруют элементы на основе индекса полнотекстового поиска, созданного для длиннотекстовых полей. Укажите содержит слова или Не содержит слов для поиска по точной фразе или для использования подстановочного знака *. Эти операторы используют полнотекстовый индекс поиска. Подстановочный знак можно использовать только в конце частичного слова или фразы.

Примеры см. в разделах Примеры запросов рабочих элементов и Запрос рабочих элементов с помощью поля Журнал.

Примечание

Не все развертывания поддерживают полнотекстовый поиск. Например, SQL Express и SQL Azure, которые поддерживают облачную службу, не поддерживают полнотекстовый поиск. В этих случаях отображаются только операторы Contains и Does not Contain .

Azure DevOps Server и Team Foundation Server автоматически индексировать все длиннотекстовые поля с типом данных PlainText и HTML и полем Title для полнотекстового поиска. Индекс и операторы доступны только в том случае, если SQL Server, поддерживающий Team Foundation Server, поддерживает полнотекстовый поиск.

Для полнотекстового поиска требуются параметры сортировки SQL, соответствующие языку, который имеет средство разбиения по словам, зарегистрированное в SQL Server. Если параметры сортировки для базы данных коллекции проектов, используемой для экземпляра Team Foundation Server, не соответствуют поддерживаемму языку, результаты поиска могут не соответствовать вашим ожиданиям. В таких случаях можно попробовать использовать операторы Contains или Не содержит .

Дополнительные сведения см. в разделе Запросы полнотекстового поиска и параметры сортировки.

API-интерфейсы REST

Сведения о программном взаимодействии с запросами см. в одном из следующих ресурсов REST API: