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


Filtering Items Using a Boolean Comparison

Логические значения задаются в фильтре в синтаксисе Microsoft Jet иначе, чем в фильтре в синтаксисе dav поиска и поиска (DASL).

Запросы Jet

В синтаксисе Jet логические операторы, такие как True/False, Yes/No, On/Off и т. д., должны использоваться как есть и не должны преобразовываться в строку. Например, чтобы создать фильтр для возврата непрочитанных элементов, можно использовать следующий фильтр:

criteria = "[UnRead] = True"

Примечание Если преобразовать логическое значение в строку сравнения, заключив его в кавычки, фильтр Jet, использующий любую непустую строку сравнения и фильтрацию по логическому свойству, вернет элементы со свойством True. Фильтр Jet, сравнивающий пустую строку с логическим свойством, возвращает элементы со свойством False.

Запросы DASL

В синтаксисе DASL необходимо преобразовать значение True/False в целочисленное значение, где 0 представляет false, а 1 — True; аналогично для да/нет и вкл./выкл. Фильтр DASL для возврата непрочитанных элементов выглядит следующим образом:

criteria = "@SQL=" & Chr(34) & "urn:schemas:httpmail:read" & Chr(34) _ & " = 0"

Поддержка и обратная связь

Есть вопросы или отзывы, касающиеся Office VBA или этой статьи? Руководство по другим способам получения поддержки и отправки отзывов см. в статье Поддержка Office VBA и обратная связь.