SContentRestriction
S’applique à : Outlook 2013 | Outlook 2016
Décrit une restriction de contenu, qui est utilisée pour limiter une vue de table aux lignes qui incluent une colonne dont le contenu correspond à une chaîne de recherche.
Propriété | Valeur |
---|---|
Fichier d’en-tête : |
Mapidefs.h |
typedef struct _SContentRestriction
{
ULONG ulFuzzyLevel;
ULONG ulPropTag;
LPSPropValue lpProp;
} SContentRestriction;
Members
ulFuzzyLevel
Paramètres d’option définissant le niveau de précision que la restriction de contenu doit appliquer lorsque vous vérifiez la correspondance.
Les 16 bits inférieurs du membre ulFuzzyLevel s’appliquent aux propriétés de type PT_BINARY et PT_STRING8 et doivent être définis sur l’une des valeurs suivantes :
FL_FULLSTRING : pour correspondre, la chaîne de recherche lpProp doit être contenue dans la propriété identifiée par ulPropTag.
FL_PREFIX : pour correspondre, la chaîne de recherche lpProp doit apparaître au début de la propriété identifiée par ulPropTag. Les deux chaînes doivent être comparées uniquement jusqu’à la longueur de la chaîne de recherche indiquée par lpProp.
FL_SUBSTRING : pour correspondre, la chaîne de recherche lpProp doit être contenue n’importe où dans la propriété identifiée par ulPropTag.
Les 16 bits supérieurs du membre ulFuzzyLevel s’appliquent uniquement aux propriétés de type PT_STRING8 et peuvent être définis sur les valeurs suivantes dans n’importe quelle combinaison :
FL_IGNORECASE : La comparaison doit être faite sans tenir compte des cas.
FL_IGNORENONSPACE : la comparaison doit ignorer les caractères non interlignes définis par Unicode, tels que les signes diacritiques.
FL_LOOSE : la comparaison doit vous donner une correspondance dans la mesure du possible, en ignorant la casse et les caractères non espacés.
ulPropTag
Balise de propriété identifiant la propriété de chaîne à vérifier pour l’occurrence de la chaîne de recherche.
lpProp
Pointeur vers une structure de valeur de propriété qui contient la valeur de chaîne à utiliser comme chaîne de recherche.
Remarques
Il existe deux balises de propriété dans une structure SContentRestriction : une dans le membre ulPropTag et l’autre dans le membre ulPropTag de la structure SPropValue pointée par lpPropProp. Dans les deux balises, MAPI requiert uniquement le champ de type de propriété et ignore le champ d’identificateur de propriété. Toutefois, les deux types de propriétés doivent correspondre, sinon la valeur d’erreur MAPI_E_TOO_COMPLEX est retournée lorsque la restriction est utilisée dans un appel à IMAPITable ::Restrict ou IMAPITable ::FindRow.
Les valeurs FL_FULLSTRING, FL_PREFIX et FL_SUBSTRING s’excluent mutuellement. Un seul d’entre eux peut être défini, et l’un d’eux doit être défini. Leurs significations sont fixes et le fournisseur doit les implémenter exactement comme défini. Le fournisseur doit retourner MAPI_E_TOO_COMPLEX s’il n’est pas en mesure de prendre en charge ces valeurs.
Les valeurs FL_IGNORECASE, FL_IGNORENONSPACE et FL_LOOSE sont indépendantes. N’importe où de zéro à tous les trois peuvent être définis. Leurs définitions sont fournies à titre indicatif uniquement, et le fournisseur est libre d’implémenter sa propre signification spécifique de chaque indicateur. Le fournisseur ne doit pas retourner d’indication d’erreur s’il n’a pas d’implémentation d’un indicateur spécifié.
Le résultat d’une restriction de contenu imposée à une propriété n’est pas défini lorsque la propriété n’existe pas. Lorsqu’un client nécessite un comportement bien défini pour une telle restriction et n’est pas sûr que la propriété existe, par exemple, il ne s’agit pas d’une colonne obligatoire d’une table, il doit créer une restriction AND pour joindre la restriction de contenu à une restriction exist. Utilisez une structure SExistRestriction pour définir la restriction exist et une structure SAndRestriction pour définir la restriction AND .
Pour plus d’informations sur la structure SContentRestriction et les restrictions en général, consultez À propos des restrictions.