Compartir a través de


SContentRestriction

Hace referencia a: Outlook 2013 | Outlook 2016

Describe una restricción de contenido, que se usa para limitar una vista de tabla a solo las filas que incluyen una columna con contenido que coincide con una cadena de búsqueda.

Propiedad Valor
Archivo de encabezado:
Mapidefs.h
typedef struct _SContentRestriction
{
  ULONG        ulFuzzyLevel;
  ULONG        ulPropTag;
  LPSPropValue lpProp;
} SContentRestriction;

Members

ulFuzzyLevel

Configuración de opciones que define el nivel de precisión que la restricción de contenido debe aplicar al comprobar si hay una coincidencia.

Los 16 bits inferiores del miembro ulFuzzyLevel se aplican a las propiedades de tipo PT_BINARY y PT_STRING8 y deben establecerse en uno de los siguientes valores:

  • FL_FULLSTRING: Para que coincida, la cadena de búsqueda lpProp debe estar contenida en la propiedad identificada por ulPropTag.

  • FL_PREFIX : para que coincida, la cadena de búsqueda lpProp debe aparecer al principio de la propiedad identificada por ulPropTag. Las dos cadenas solo se deben comparar hasta la longitud de la cadena de búsqueda indicada por lpProp.

  • FL_SUBSTRING: Para que coincida, la cadena de búsqueda lpProp debe estar contenida en cualquier parte de la propiedad identificada por ulPropTag.

Los 16 bits superiores del miembro ulFuzzyLevel solo se aplican a las propiedades de tipo PT_STRING8 y se pueden establecer en los siguientes valores en cualquier combinación:

  • FL_IGNORECASE: la comparación debe realizarse sin tener en cuenta el caso.

  • FL_IGNORENONSPACE: la comparación debe omitir caracteres no espaciados definidos por Unicode, como marcas diacrónicas.

  • FL_LOOSE: la comparación debe proporcionar una coincidencia siempre que sea posible, omitiendo los caracteres de mayúsculas y minúsculas y sin espaciado.

ulPropTag

Etiqueta de propiedad que identifica la propiedad de cadena que se va a comprobar para detectar la aparición de la cadena de búsqueda.

lpProp

Puntero a una estructura de valor de propiedad que contiene el valor de cadena que se usará como cadena de búsqueda.

Comentarios

Hay dos etiquetas de propiedad en una estructura SContentRestriction : una en el miembro ulPropTag y la otra en el miembro ulPropTag de la estructura SPropValue a la que apunta lpProp. En ambas etiquetas, MAPI solo requiere el campo de tipo de propiedad y omite el campo de identificador de propiedad. Sin embargo, los dos tipos de propiedad deben coincidir o, de lo contrario, el valor de error MAPI_E_TOO_COMPLEX se devuelve cuando se usa la restricción en una llamada a IMAPITable::Restrict o IMAPITable::FindRow.

Los valores FL_FULLSTRING, FL_PREFIX y FL_SUBSTRING son mutuamente excluyentes. Solo se puede establecer uno de ellos y uno de ellos debe establecerse. Sus significados son fijos y el proveedor debe implementarlos exactamente según lo definido. El proveedor debe devolver MAPI_E_TOO_COMPLEX si no puede admitir estos valores.

Los valores FL_IGNORECASE, FL_IGNORENONSPACE y FL_LOOSE son independientes. Se puede establecer desde cero hasta los tres. Sus definiciones solo se proporcionan como una guía y el proveedor puede implementar su propio significado específico de cada marca. El proveedor no debe devolver ninguna indicación de error si no tiene ninguna implementación de una marca especificada.

El resultado de una restricción de contenido impuesta contra una propiedad es indefinido cuando la propiedad no existe. Cuando un cliente requiere un comportamiento bien definido para dicha restricción y no está seguro de si la propiedad existe, por ejemplo, no es una columna necesaria de una tabla, debe crear una restricción AND para unirse a la restricción de contenido con una restricción existente. Use una estructura SExistRestriction para definir la restricción exist y una estructura SAndRestriction para definir la restricción AND .

Para obtener más información sobre la estructura SContentRestriction y las restricciones en general, vea Acerca de las restricciones.

Vea también