Introduction

Un filtre de type liste déroulante n'est utile que dans la mesure où la liste de valeurs qu'il propose l'est. Dans une liste comptant des centaines de projets répartis entre une douzaine de services, la liste déroulante Projet du volet de filtrage affiche tous les projets de la liste - même après que l'utilisateur a déjà choisi un service. La plupart de ces entrées aboutissent à un tableau de résultats vide, et l'utilisateur doit les parcourir pour trouver la poignée qui l'intéresse.

L'option Filtres en cascade du composant WebPart List Filter Online résout ce problème. Lorsqu'elle est activée, chaque liste déroulante ne propose que les valeurs présentes dans les éléments correspondant aux autres filtres actuellement sélectionnés dans le volet. Choisissez Marketing dans Service, et Projet se réduit aux projets du service marketing. Cet article décrit ce que fait l'option, comment l'activer, comment elle se comporte au quotidien et quelles sont ses limites.

La liste déroulante Projet réduite aux projets du service sélectionné

La liste déroulante Projet réduite aux projets du service sélectionné

Ce que font les filtres en cascade

L'option agit sur les deux contrôles de filtre qui chargent leurs options à partir de la liste - Liste déroulante et Liste déroulante (Valeurs multiples). Lorsque les filtres en cascade sont désactivés, chacun de ces contrôles charge une seule fois, à l'ouverture du volet de filtrage, les valeurs distinctes de sa colonne, et la liste reste la même jusqu'à ce que la page soit rechargée ou que l'utilisateur accède à un autre dossier.

Lorsque les filtres en cascade sont activés, le composant WebPart transmet les sélections effectuées dans les autres contrôles du volet à la requête qui charge les valeurs distinctes. SharePoint ne renvoie alors que les valeurs présentes dans les éléments qui satisfont ces sélections. La sélection propre au contrôle ne fait jamais partie de la requête : une liste déroulante ne se réduit donc pas elle-même, et vous pouvez toujours passer d'un projet à un autre au sein du service que vous avez choisi.

Les contrôles qui ne chargent pas de liste de valeurs - zones de texte, contrôles de date et de plage de dates, plages numériques et curseurs, sélecteurs de personnes, sélecteurs de termes, commutateur Oui/Non et filtre de pièces jointes - ne sont pas modifiés par l'option. Ils participent toutefois à la réduction : une valeur Oui/Non ou un texte saisi dans le volet est transmis avec les sélections des listes déroulantes lorsque les options d'une liste déroulante sont rechargées.

📝 Remarque
Les valeurs proposées dans le menu contextuel d'un en-tête de colonne sont toujours réduites par les autres filtres actifs, que les filtres en cascade soient activés ou non. L'option ne contrôle que le comportement du volet de filtrage.

Activer l'option

  1. Modifiez la page et ouvrez le volet des propriétés du composant WebPart List Filter Online.
  2. Développez le groupe Volet de filtre.
  3. Vérifiez que le commutateur Volet de filtre est activé - le commutateur Filtres en cascade est désactivé tant que le volet lui-même est désactivé.
  4. Activez Filtres en cascade.
  5. Dans le configurateur de colonnes situé sous les commutateurs, affectez le contrôle Liste déroulante ou Liste déroulante (Valeurs multiples) aux colonnes qui doivent dépendre les unes des autres.
  6. Republiez la page.

L'option est désactivée par défaut et est enregistrée dans les propriétés du composant WebPart ; elle s'applique donc à tous les visiteurs de la page.

Le commutateur Filtres en cascade dans le groupe Volet de filtre du volet des propriétés

Le commutateur Filtres en cascade dans le groupe Volet de filtre du volet des propriétés

Scénario d'exemple

Un registre de projets comporte trois colonnes de choix : Service, Projet et État. Les trois sont placées dans le volet de filtrage - les deux premières en Liste déroulante, la troisième en Liste déroulante (Valeurs multiples) - et les filtres en cascade sont activés.

  1. L'utilisateur ouvre la page. Chaque liste déroulante affiche toutes les valeurs de sa colonne, car rien n'est encore sélectionné.
  2. L'utilisateur choisit Marketing dans Service. Les contrôles Projet et État rechargent leurs options : Projet n'affiche plus que les projets marketing, et État uniquement les statuts présents dans les projets marketing.
  3. L'utilisateur choisit Refonte du site web dans Projet. État se recharge à nouveau et affiche les statuts de ce seul projet. Service est également rechargé, mais il n'affiche toujours que Marketing, car c'est le seul service auquel le projet appartient.
  4. L'utilisateur sélectionne Actif et En attente dans État et clique sur Appliquer le filtre. Le tableau de résultats affiche les éléments correspondants, et trois puces de filtre apparaissent au-dessus.

L'utilisateur pourrait tout aussi bien commencer par État, puis réduire le service : l'ordre dans lequel les sélections sont effectuées n'a pas d'importance.

Détails de fonctionnement

La réduction commence avant l’application du filtre. Les options sont rechargées dès qu'une sélection est effectuée dans un autre contrôle, et non lorsque l'on clique sur Appliquer le filtre. L'utilisateur peut ainsi construire toute la combinaison avant de l'appliquer en une seule fois.

Indépendance de l'ordre. Chaque liste déroulante est réduite par toutes les autres sélections du volet, quel que soit le contrôle utilisé en premier.

Effacement. Effacer le filtre réinitialise tous les contrôles et supprime le filtre des résultats ; comme il ne reste aucune sélection, chaque liste déroulante recharge sa liste complète de valeurs.

Puces de filtre. La suppression d’une puce de filtre efface aussi le contrôle correspondant du volet. Lorsque les filtres en cascade sont activés, les autres listes déroulantes rechargent leurs options selon les conditions restantes du volet.

Autres sources de filtres. Les conditions restaurées depuis un lien, un préréglage ou une visite précédente sont chargées dans le volet et participent au filtrage en cascade. Les filtres d’en-tête de colonne restent distincts des conditions du volet.

Dossiers. Lorsque le composant WebPart affiche le contenu d'un dossier, les valeurs distinctes sont chargées à partir de ce dossier et de ses sous-dossiers, et les options sont rechargées chaque fois que l'utilisateur accède à un autre dossier.

Le filtre prédéfini. Le filtre que l'auteur de la page définit dans le groupe Filtrer avec le Query Builder limite le tableau de résultats, mais il n'est pas appliqué lors du chargement des options des listes déroulantes. Une liste déroulante peut donc proposer une valeur que le filtre prédéfini exclut ; la choisir ne produit simplement aucun résultat.

Types de conditions. La réduction est transmise à SharePoint sous forme de valeurs exactes. Les sélections des listes déroulantes, des listes déroulantes à valeurs multiples et des commutateurs Oui/Non sont comparées exactement. Les conditions d'autres types - plage de dates ou de nombres, texte partiel - sont transmises telles qu'elles ont été saisies ; elles peuvent donc réduire les options plus strictement qu'elles ne réduisent le tableau de résultats. Les conditions sans valeur, telles que Contient des données ou Ne contient pas de données, sont ignorées lors du chargement des options.

Puces de filtre d'un filtre en cascade appliqué, au-dessus des résultats

Puces de filtre d'un filtre en cascade appliqué, au-dessus des résultats

Considérations de performance

Chaque liste déroulante du volet envoie une requête à SharePoint lorsque ses options sont chargées. Sans filtres en cascade, cela se produit une seule fois par affichage de page. Avec les filtres en cascade, chaque modification dans un contrôle du volet recharge les options de chaque autre liste déroulante : un volet comportant quatre listes déroulantes envoie donc trois requêtes par sélection. Les réponses sont associées à la dernière requête, de sorte qu'une réponse tardive à une sélection antérieure n'écrase jamais les options actuelles.

Pour des listes de quelques milliers d'éléments, cela passe inaperçu. Pour les grandes listes, deux mesures sont utiles :

  • Limitez le nombre de listes déroulantes dans le volet ; placez-y les colonnes qui dépendent réellement les unes des autres et utilisez d'autres contrôles pour le reste.
  • Indexez les colonnes utilisées dans le volet. Pour une liste de plus de 5 000 éléments, le configurateur de colonnes signale chaque colonne sélectionnée non indexée par l'avertissement La colonne n'est pas indexée. Le filtrage d'une grande liste par cette colonne peut ne pas fonctionner. et propose un bouton Créer un index à côté. La requête qui charge les options réduites est soumise au même seuil d'affichage de liste que la requête des résultats.

💡 Astuce
Le fonctionnement de List Filter Online avec des listes dépassant le seuil d'affichage de liste, ainsi que les colonnes à indexer, sont décrits dans KB10257. Filtrer les grandes listes : colonnes indexées et seuil de 5 000 éléments.

Limitations

❗ Important
Les filtres en cascade ne réduisent que les options des contrôles Liste déroulante et Liste déroulante (Valeurs multiples). Les options d'un sélecteur de termes ou d'un sélecteur de personnes ne sont pas réduites, et les plages d'un curseur ou d'un contrôle de plage numérique ne sont pas recalculées lorsque d'autres filtres changent.

❗ Important
Une valeur sélectionnée reste sélectionnée et visible même si elle ne figure plus dans les résultats réduits. Cette combinaison peut produire un tableau vide. Modifiez la sélection ou effacez le filtre.

Questions et réponses

Posez une question sur cet article et obtenez une réponse officielle de notre équipe.

Aucune question pour le moment. Posez la première !

Articles à la une

Comment les demandes d'absence et les remplacements fonctionnent ensemble

Référence sur le lien entre les demandes d'absence et les remplacements dans Vitextra Absence & Coverage : quand un remplacement est créé, ce qui se passe à l'approbation, au refus et à l'annulation, comment apparaissent les absences non couvertes et pourquoi les remplacements autonomes se comportent différemment.

72 6 min
Ouvrir des éléments sélectionnés dans List Filter Online à partir d'une liste SharePoint native

Comment activer et utiliser la commande Ouvrir dans List Filter que le package Vitextra List Filter Online ajoute aux listes et bibliothèques SharePoint natives : configurer l'entrée Tenant Wide Extensions, définir la page cible, limiter la portée de la commande et ouvrir les éléments sélectionnés dans une page contenant le composant WebPart List Filter Online.

75 8 min
Questions and Answers : questions fréquentes

Réponses courtes aux questions courantes sur le composant WebPart Vitextra Questions and Answers pour SharePoint Online et Microsoft Teams : où le contenu est stocké, comment connecter une liste existante, Markdown et réponses enrichies, recherche et catégories, questions des employés et modération, commentaires et liens profonds, autorisations, Teams, langues et thèmes, licence et version d'évaluation.

24 8 min

Partager