Procédure : définir des filtres pour les contrôles de sélecteur d’élément externe
Cette rubrique montre comment affiner les résultats de la recherche dans le sélecteur d’éléments externes en définissant des filtres sur le type de contenu externe à l’aide de Microsoft SharePoint Designer 2010.
Dernière modification : vendredi 25 juin 2010
S’applique à : SharePoint Server 2010
Par exemple, supposons que vous recherchiez un artiste nommé Kim. Cet artiste existe manifestement dans le système externe comme les résultats de la recherche le montrent sur la Figure 1.
Figure 1. Choisir un élément externe
Mais le sélecteur d’éléments externes effectue les opérations suivantes :
Affiche effectivement Kim.
Affiche d’autres résultats qui ne répondent pas aux critères de recherche.
Renvoie le message d’erreur ambigu suivant : « Les critères de recherche ne peuvent pas être respectés, car les filtres ne sont pas définis pour le type de contenu externe. Contactez l’administrateur système. »
Pourquoi le sélecteur d’éléments externes renvoie-t-il ces autres correspondances ? Comme le message d’erreur le suggère, le problème dans cet exemple est que le type de contenu externe « Artiste » n’a pas de filtre défini. Si un type de contenu externe est sans filtre, le comportement par défaut est d’afficher les 200 premiers éléments et de ne pas filtrer les résultats de la recherche. Dans ce cas, un avertissement est également affiché dans le sélecteur.
Dans un scénario où vous devez choisir parmi des milliers d’éléments, vous aurez besoin d’un bon jeu de filtres définis sur le type de contenu externe afin que les utilisateurs finals puissent trouver les éléments qu’ils recherchent et restreindre rapidement leur recherche.
Pour toutes ces raisons, il est recommandé de définir au moins un filtre sur le type de contenu externe.
Heureusement, vous pouvez créer facilement des définitions de filtres dans SharePoint Designer 2010. Vous devez définir des filtres sur les opérations Read List, qui correspondent aux méthodes Finder dans le modèle de métadonnées BDC. La section suivante décrit comment ajouter un filtre pour un type de contenu externe.
Définition d’un filtre pour un type de contenu externe
Dans SharePoint Designer 2010, vous utilisez la boîte de dialogue Configuration des paramètres de filtre, illustrée dans la Figure 2, pour configurer un filtre pour l’opération Read List.
Figure 2. Définition des filtres pour l’opération de lecture de liste
Pour définir un filtre pour un type de contenu externe
Pour ouvrir la boîte de dialogue Configuration des paramètres de filtre dans SharePoint Designer 2010, double-cliquez sur l’opération Read List, puis cliquez sur Suivant.
Cliquez sur Ajouter un paramètre de filtre.
Pour configurer le sélecteur d’éléments externes, cliquez sur le lien (Cliquer pour ajouter) du panneau Propriétés. La Figure 3 montre la boîte de dialogue Configuration du filtre qui s’affiche.
Figure 3. Configurer un nouveau filtre
Dans le champ Nouveau filtre, tapez le nom du filtre.
Sélectionnez le champ de filtre à utiliser. Dans cet exemple, vous voulez filtrer par nom d’artiste, vous sélectionnez donc le champ ArtistName.
Définissez le type de filtre à utiliser. Pour consulter la liste complète des types de filtre et connaître leur fonctionnement, voir Types de filtres pris en charge par le service Business Data Connectivity. Comparaison et Caractère générique sont deux types de filtre fréquemment utilisés. Dans cet exemple, le nom de l’artiste peut être composé de plusieurs mots (comme « Franz Kohl »). La liste suivante indique le résultat produit par chaque type de filtre :
Comparaison Si vous utilisez l’opérateur « Égal », l’utilisateur doit normalement taper le nom complet de l’artiste pour trouver des éléments. Par conséquent, ce filtre ne fonctionne que si l’utilisateur tape « Franz Kohl », mais ne fonctionne pas avec « Franz » ou « Kohl » uniquement.
Caractère générique Avec ce type de filtre, le filtre est envoyé au système externe avec des caractères génériques. Dans ce cas, le filtre fonctionne si l’utilisateur tape « Franz » ou « Kohl » et renvoie tous les artistes contenant la chaîne « Franz » ou « Kohl » dans leur nom.
Finalement, déterminez la marche à suivre si la valeur du filtre est Null. Vous devez sélectionner cette option si une liste externe est associée à ce type de contenu externe. Sinon, aucun élément n’apparaîtra dans la liste car la valeur du filtre est Null.
Ajoutez tous les autres paramètres de filtre souhaités avec un comportement opératoire AND/OR. Par exemple, vous pouvez filtrer par nom AND zone.
Important
Lors de l’intégration spécifique avec des bases de données, les outils Business Connectivity Services génèrent les requêtes nécessaires pour activer les filtres désignés. Si vous utilisez d’autres types de sources de données Business Connectivity Services telles que des services Web, des services WCF (Windows Communication Foundation) ou des assemblys .NET, vous devez vous assurer que vos filtres font partie de leur API avant de les façonner dans SharePoint Designer.
Voici un exemple de résultats de recherche dans le sélecteur pour la sélection d’un type de filtre avec caractères génériques sur le nom de l’artiste, à la recherche de « Karen ».
Figure 4. Choisir un élément externe avec des filtres appliqués
Lorsque plusieurs filtres sont définis sur le type de contenu externe, le sélecteur d’éléments externes combine les éléments résultant de chaque filtre de chaque opération Read List du type de contenu externe. Pour améliorer l’efficacité, il est recommandé de ne pas avoir un grand nombre de filtres ou de méthodes Finder sur chaque type de contenu externe car cela pourrait entraîner un grand nombre d’appels à des opérations sur le type de contenu externe et réduire ainsi les performances.