Поля запросов, операторы и макросы в 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

Описание

Логическоезначение 1

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

DateTime или Date/Time

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

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

Double или Decimal

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

GUID

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

Журнал

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

HTML

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

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

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

Целое число

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

Поле "Обычный текст " или "Текст" (многострочный текст)

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

picklistDouble2

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

picklistInteger2

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

picklistString2

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

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

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

TreePath

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

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

Примечание

  1. Логическое поле типа данных поддерживается для TFS 2017 и более поздних версий.
  2. Типы данных 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.

Не в группе

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

TreePath

Под

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

TreePath

Всегда

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

String , 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 поддерживается для Azure Boards и TFS 2015 и более поздних версий. Этот макрос работает только при запуске с веб-портала. Макрос нельзя использовать при копировании или клонирования наборов тестов и тестовых случаев, определении оповещений или с помощью REST API.


@CurrentIteration +/- n

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


@Follows

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


@Me

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


@MyRecentActivity1

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


@Project

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


@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 and Not Contains .

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

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

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

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

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