Расширенная фильтрация и синтаксис запросов

Важно

Для клиентов, использующих Human Resources, функции, перечисленные в этой статье, в настоящее время доступны в изолированном приложении Dynamics 365 Human Resources и в объединенной инфраструктуре Finance. Навигация может отличаться от указанной после обновлений. Если требуется найти определенную страницу, можно воспользоваться поиском.

В этой статье описываются параметры фильтрации и запросов, доступные при использовании диалогового окна «Расширенный фильтр/сортировка» или оператора "matches" на панели фильтров или в фильтрах заголовков столбцов сетки.

Синтаксис расширенного запроса

Синтаксис Описание символов описание Пример
значение Равно введенному значению Введите значение, которое требуется найти: При вводе Виктор будет осуществлен поиск всех значений «Виктор».
!значение (восклицательный знак) Не равно введенному значению Введите восклицательный знак, затем значение, которое требуется исключить из поиска. При вводе !Виктор будет осуществлен поиск всех значений, кроме «Виктор».
начальное-значение..конечное-значение (две точки) Между двумя значениями, разделенными двумя точками Введите начальное значение, затем две точки, затем конечное значение. Если ввести 1..10, будут найдены все значения от 1 до 10. Однако если ввести строковое значение A..C, то будут найдены все значения, начинающиеся на A и B, а также значения, точно равные "C". Например, этот запрос не найдет "Ca". Чтобы найти все значения, начинающиеся на буквы от A до C, следует ввести A..D.
..значение (две точки) Меньше или равно введенному значению Введите две точки, а затем необходимое значение. Если ввести ..1000, то будут найдены все значения, меньшие или равные 1000, например 100, 999,95 и 1 000.
значение.. (две точки) Больше или равно введенному значению Введите значение, затем две точки. 1000.. будут найдены все значения, большие или равные 1000, например 1000, 1000,01 и 1 000 000.
>значение (знак "больше чем") Больше, чем введенное значение Введите знак "больше чем" (>), а затем значение. Если ввести >1000, то будут найдены все значения, большие 1000, например 1000,01, 20 000 и 1 000 000.
<значение (знак "меньше чем") Меньше, чем введенное значение Введите знак "меньше чем" (<), а затем значение. Если ввести <1000, то будут найдены все значения, меньшие 1000, например 999,99, 1 и -200.
значение* (звездочка) Начинается с введенного значения Введите начальное значение для поиска, а затем звездочку (*). Если ввести С*, то будут найдены все строки, начинающиеся на С, например Стокгольм, Сидней и Сан-Франциско.
*значение (звездочка) Заканчивается на введенное значение Введите звездочку, а потом конечное значение для поиска. Если ввести *восток, то будут найдены все строки, заканчивающиеся на "восток", например "северо-восток" или "юго-восток".
*значение* (звездочка) Содержит введенное значение Введите звездочку, затем значение, а затем снова звездочку. Если ввести *во*, то будут найдены все строки, содержащие «во», например «северо-восток» или «юго-восток».
? (вопросительный знак) Содержится один или более неизвестных символов Введите вопросительный знак вместо неизвестного символа в значении. Если ввести В?ктор, то будут найдены «Виктор» и «Вектор».
значение,значение (запятая) Поиск записей, совпадающих с введенными через запятую значениями Введите все критерии поиска, разделяя их запятыми. Если ввести A, D, F, G, то будут найдены «A», «D», «F» и «G». Если ввести 10, 20, 30, 100, то будет найдено точно «10, 20, 30, 100».
"" (две двойные кавычки) Соответствие пустому значению Введите две последовательные двойные кавычки для фильтрации пустых значений в этом поле. Две последовательные двойные кавычки ("") ищут строки без значения для текущего столбца.
(Запрос для управления финансами и операциями) (Запрос для управления финансами и операциями между скобками) Поиск согласно введенному запросу Введите запрос в виде SQL-инструкции в скобках, используя язык запросов для управления финансами и операциями. ((AccountNum LIKE "US*") && (DirPartyTable.Name LIKE "Cont*"))

как пример синтаксиса для условия фильтра по полю из корневого источника данных, а также по полю из другого источника данных (для страницы "Все клиенты")
Н Сегодняшняя дата Введите T. T соответствует текущей дате.
(имяМетода(параметры)) (метод SysQueryRangeUtil в скобках) Сопоставление значения или диапазона значений, указанных в параметрах метода SysQueryRangeUtil Введите метод SysQueryRangeUtil с параметрами, которые задают значение или диапазон значений.
  1. Перейдите в раздел Расчеты с клиентами>Накладные>Открытые накладные клиента.
  2. Нажмите Ctrl+Shift+F3, чтобы открыть страницу Запрос.
  3. На вкладке Диапазон нажмите кнопку Добавить.
  4. В поле Таблица выберите Открытые проводки по клиентам.
  5. В поле Поле выберите Срок выполнения.
  6. В поле Критерии введите (yearRange(-2,0)).
  7. Нажмите кнопку . Страница списка обновляется, и на ней отображаются накладные, соответствующие введенному условию. В данном примере отображаются накладные, которые подлежали оплате в течение последних двух лет.
В таблице в следующем разделе приведены дополнительные сведения о методах даты SysQueryRangeUtil и несколько примеров.

Расширенные запросы даты, которые используют методы SysQueryRangeUtil

Метод Описание Пример
Day (_relativeDays=0) Поиск даты по отношению к дате сессии. Положительные значения показывают будущие даты, отрицательные значения показывают прошлые даты.
  • Завтра — введите (Day(1)).
  • Сегодня — введите (Day(0)).
  • Вчера — введите (Day(-1)).
DayRange (_relativeDaysFrom=0, _relativeDaysTo=0) Поиск диапазона дат по отношению к дате сессии. Положительные значения показывают будущие даты, отрицательные значения показывают прошлые даты.
  • Последние 30 дней — введите (DayRange(-30,0)).
  • Предыдущие 30 дней и будущие 30 дней — введите (DayRange(-30,30)).
GreaterThanDate (_relativeDays=0) GreaterThanUtcDate (_relativeDays=0) Поиск всех дат после указанной относительной даты.
  • Больше чем 30 дней от сегодняшнего дня — введите (GreaterThanDate(30)).
GreaterThanUtcNow () Поиск всех записей даты/времени после текущего момента времени.
  • Все будущие даты/моменты времени — введите (GreaterThanUtcNow ()).
LessThanDate (_relativeDays=0) LessThanUtcDate (_relativeDays=0) Поиск всех дат до указанной относительной даты.
  • Меньше чем семь дней от сегодняшнего числа — введите (LessThanDate(7)).
LessThanUtcNow () Поиск всех записей даты/времени до текущего момента времени.
  • Все прошедшие даты/моменты времени — введите (LessThanUtcNow ()).
MonthRange (_relativeFrom=0, _relativeTo=0) Поиск диапазона дат на основе месяца по отношению к текущему месяцу.
  • Предыдущие два месяца — введите (MonthRange(-2,0)).
  • Следующие три месяца — введите (MonthRange(0,3)).
YearRange (_relativeFrom=0, _relativeTo=0) Поиск диапазона дат на основе числа лет по отношению к текущему году.
  • Следующий год — введите (YearRange(0, 1)).
  • Предыдущий год — введите (YearRange(-1,0)).