À propos des restrictions
S’applique à : Outlook 2013 | Outlook 2016
Une restriction est un moyen de limiter le nombre de lignes d’une vue uniquement aux lignes avec des valeurs pour les colonnes qui correspondent à des critères spécifiques. Il existe de nombreuses possibilités d’utilisation de restrictions avec des tables. Les applications clientes peuvent utiliser des restrictions, par exemple, pour filtrer une table de contenu pour les messages envoyés par une personne particulière, pour rechercher des lignes qui ne prennent pas en charge une propriété ou qui ont défini une propriété sur une valeur spécifique, ou pour rechercher des destinataires en double dans un message.
Les méthodes IMAPITable ::Restrict et IMAPITable ::FindRow sont utilisées pour définir des restrictions sur une table. Restrict applique la restriction à la table sans récupérer de lignes. Pour récupérer uniquement les lignes qui répondent à la restriction, un appel ultérieur à IMAPITable ::QueryRows ou une méthode similaire est nécessaire. FindRow applique la restriction et récupère la première ligne de la table qui correspond aux critères. FindRow applique une restriction temporaire, qui existe uniquement pendant la durée de l’appel, tandis que Restrict applique une restriction plus permanente.
Certains clients peuvent créer une restriction à l’aide de colonnes qui ne figurent pas dans le jeu de colonnes actuel. La prise en charge d’une telle restriction est facultative et les implémenteurs de table qui la prennent en charge ajoutent de la valeur, en particulier pour les tables de contenu. Les implémenteurs de table qui ne la prennent pas en charge peuvent retourner la valeur MAPI_E_TOO_COMPLEX d’un appel Restrict ou la valeur MAPI_E_NOT_FOUND d’un appel FindRow .
Les clients doivent savoir que, même si le fournisseur prend en charge les restrictions sur les colonnes qui ne se trouvent pas dans le jeu de colonnes actuel, ils obtiendront globalement de meilleures performances en spécifiant les colonnes qu’ils ont l’intention d’utiliser dans leurs restrictions avec IMAPITable ::SetColumns.