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


SContentRestriction

Область применения: Outlook 2013 | Outlook 2016

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

Свойство Значение
Файл заголовка:
Mapidefs.h
typedef struct _SContentRestriction
{
  ULONG        ulFuzzyLevel;
  ULONG        ulPropTag;
  LPSPropValue lpProp;
} SContentRestriction;

Members

ulFuzzyLevel

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

Нижние 16 бит элемента ulFuzzyLevel применяются к свойствам типа PT_BINARY и PT_STRING8 и должны иметь одно из следующих значений:

  • FL_FULLSTRING. Для сопоставления строка поиска lpProp должна содержаться в свойстве, определяемом ulPropTag.

  • FL_PREFIX : для сопоставления строка поиска lpProp должна отображаться в начале свойства, определяемого ulPropTag. Две строки следует сравнивать только с длиной строки поиска, указанной lpProp.

  • FL_SUBSTRING. Для сопоставления строка поиска lpProp должна содержаться в любом месте свойства, определяемого ulPropTag.

Верхние 16 бит элемента ulFuzzyLevel применяются только к свойствам типа PT_STRING8 и могут быть заданы следующие значения в любой комбинации:

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

  • FL_IGNORENONSPACE. Сравнение должно игнорировать символы, не определенные Юникодом, такие как диакритические знаки.

  • FL_LOOSE. Сравнение должно по возможности обеспечить совпадение, игнорируя регистр и символы без интервалов.

ulPropTag

Тег свойства, определяющий строковое свойство, проверяемое на наличие строки поиска.

lpProp

Указатель на структуру значений свойства, содержащую строковое значение, используемое в качестве строки поиска.

Замечания

В структуре SContentRestriction есть два тега свойств: один в элементе ulPropTag, а другой — в элементе ulPropTag структуры SPropValue, на которую указывает lpProp. В обоих тегах MAPI требует только поля типа свойства и игнорирует поле идентификатора свойства. Однако два типа свойств должны совпадать, иначе значение ошибки MAPI_E_TOO_COMPLEX возвращается при использовании ограничения в вызове IMAPITable::Restrict или IMAPITable::FindRow.

Значения FL_FULLSTRING, FL_PREFIX и FL_SUBSTRING являются взаимоисключающими. Можно задать только один из них, и один из них должен быть установлен. Их значения являются фиксированными, и поставщик должен реализовать их точно так, как определено. Поставщик должен вернуть MAPI_E_TOO_COMPLEX, если он не может поддерживать эти значения.

Значения FL_IGNORECASE, FL_IGNORENONSPACE и FL_LOOSE являются независимыми. Можно задать от нуля до всех трех из них. Их определения предоставляются только в качестве руководства, и поставщик может реализовать свое собственное конкретное значение каждого флага. Поставщик не должен возвращать указания об ошибке, если у него нет реализации указанного флага.

Результат ограничения содержимого, наложенного на свойство, не определен, если свойство не существует. Если клиенту требуется четко определенное поведение для такого ограничения и он не уверен, существует ли свойство, например, он не является обязательным столбцом таблицы, он должен создать ограничение AND для присоединения ограничения содержимого к ограничению на существование. Используйте структуру SExistRestriction , чтобы определить ограничение на существование, и структуру SAndRestriction для определения ограничения AND .

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

См. также