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


Поля, операторы, значения и переменные запросов

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

Пример предложения запроса

И/или

Поле

Оператор

Значение

And

Командный проект

=

@Project

Дополнительные общие сведения о запросах см. в разделе Запрос рабочих элементов. Сведения о переходах в редакторе запросов и представлении запросов при помощи сочетаний клавиш см. в разделе Сочетания клавиш для работы в Team Web Access и в Team Explorer.

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

  • И/или

  • Поля запроса и значения

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

  • Переменные запроса

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

  • Запрос индексированных полей

Контрольный список для определения предложения запроса:

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

    Дополнительную информацию см. в разделе Поля запроса и значения.

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

    Дополнительные сведения см. Операторы.

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

  4. Дополнительные сведения об использовании переменных для указания текущего командного проекта, пользователя или даты см. в разделе Переменные.

  5. Чтобы добавить предложение, выберите пункт Добавить новый оператор или Добавить новое предложение.

    Предложение можно добавить в конце запроса, вставить после существующего предложения (Предложение запроса вставки), а также, при необходимости, удалить (Удаление предложения запроса), сгруппировать (Группировка предложения запроса) и разгруппировать (Отмена группировки предложение запроса) предложения.

И/или

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

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

Предложения запросов можно группировать и использовать в качестве единого блока отдельно от остального запроса, что похоже на заключение в скобки выражения в математическом уравнении или логическом утверждении. При группировании предложений оператор И или ИЛИ, указанный для первого предложения в группе, применяется ко всей группе.

Как показано в следующем примере, сгруппированные предложения преобразуются в соответствующее логическое выражение. Первое выражение возвращает рабочие элементы с приоритетом 1 и все активные ошибки с любым приоритетом. Второе выражение возвращает все активные рабочие элементы с приоритетом 1 и все ошибки с приоритетом 1 (активные и неактивные).

Сгруппированные предложения

Логическое выражение

Оператор OR со сгруппированным предложением AND

Приоритет=1 ИЛИ (Тип рабочего элемента=Ошибка И Состояние=Активно)

Оператор AND со сгруппированным предложением Or

Приоритет=1 И (Тип рабочего элемента=Ошибка ИЛИ Состояние=Активно)

Для получения дополнительной информации см. Задание условия фильтрации запроса [перенаправление].

Поля запроса и значения

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

Тип данных

Сохраненные данные

DateTime

Конкретный момент всеобщего скоординированного времени (UTC). Можно указать переменную, например @Today или @Today-1, либо значение, например 1/1/2012.

Double

Действительное число, например 0,2 или 3,5.

GUID

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

History

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

HTML

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

Примечание

При обновлении Team Foundation Server тип поля Описание изменяется с PlainText на HTML.Если необходимо, с помощью команды witadmin changefield можно отменить изменение типа данных для этого поля.См. раздел Управление полями рабочих элементов [witadmin].

Integer

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

PlainText

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

String

Короткая текстовая строка, содержащая до 255 символов Юникода.

TreePath

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

К началу

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

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

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

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

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

=

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

Число, включая Double, GUID, Integer, String, DateTime и TreePath

<>

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

Число, String, DateTime и TreePath

>

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

Число, String и DateTime

<

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

Число, String и DateTime

>=

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

Число, String и DateTime

<=

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

Число, String и DateTime

=[Поле]

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

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

<>[Поле]

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

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

>[Поле]

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

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

<[Поле]

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

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

>=[Поле]

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

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

<=[Поле]

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

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

Содержит

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

String

Не содержит

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

String

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

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

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

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

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

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

В

Совпадает с любым значением в наборе с разделителями. Например, можно найти рабочие элементы, с ИД 100, 101 и 102, если эти значения определены для поля ИД.

Важно!

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

Число, String, DateTime, TreePath

В группе

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

Указать в качестве значения группу безопасности или группу рассылки электронной почты нельзя.

Рабочие примеры см. в разделе Примеры запросов.

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

Примечание

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

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

Не в группе

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

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

Примечание

Оператор Не в группе применяется только для полей, использующих тип данных String, или для поля Тип рабочего элемента.

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

Всегда

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

String, DateTime

В группе

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

TreePath

Не в группе

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

TreePath

К началу

Переменные запроса

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

Переменная запроса

Использование

@Me

Эти переменные используются для автоматического поиска текущего псевдонима пользователя в поле, содержащем псевдонимы пользователя. Например, чтобы найти все открытые рабочие элементы, необходимо в столбце Поле установить значение Активировал, в столбце Оператор — значение =, а в столбце Значение — значение @Me.

@Project

Эта переменная используется для поиска рабочих элементов в текущем командном проекте. Например, чтобы найти все рабочие элементы текущего проекта, необходимо в столбце Поле установить значение Командный проект, в столбце Оператор — значение =, а в столбце Значение — значение @Project.

@Today

Эта переменная используется для поиска рабочих элементов, относящихся к текущей или более ранней дате. Можно также изменить переменную @Today, вычитая из нее дни. Например, чтобы найти все элементы, активированные на прошлой неделе, в столбце Поле необходимо установить значение Дата активации, в столбце Оператор — значение >=, а в столбце Значение — значение @Today - 7.

[Any]

Эта переменная используется для поиска рабочих элементов, относящихся к любому значению, указанному для определенного поля.

К началу

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

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

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

Примечание

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

Операторы Содержит слова и Не содержит слова фильтруют элементы на основе индекса полнотекстового поиска, созданного для длинных текстовых полей. Team Foundation автоматически индексирует все длинные текстовые поля с типом данных PlainText и HTML и полем Название для полнотекстового поиска. Индекс и операторы доступны, только если выпуск SQL Server, который поддерживает Team Foundation Server, поддерживает полнотекстовый поиск.

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

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

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

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

По умолчанию индексируются следующие поля: Кому назначено, Дата создания, Кем изменено, Состояние, Причина, Идентификатор области, Идентификатор итерации и Тип рабочего элемента. Если ваша команда часто использует в запросах другие поля, их можно добавить в индекс запросов.

Индексация поля включается и отключается с помощью команды witadmin indexfield. См. раздел Управление полями рабочих элементов [witadmin].

См. также

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

Запрос рабочих элементов