
Reply To: Filtrer une galerie avec plusieurs colonne de choix multiple et Supprimer les doublons
Hello Nathaly Gomez lopez ,
Tout d’abord félicitations, c’est plutôt pas mal si tu es débutante sur les app Canvas !
Voici quelques conseils, mais je préfère préciser: je vais partir du principe que ta liste SP contient moins de 500 éléments (ou au pire, moins de 2000 éléments) et que l’absence de délégation ne posera pas de problème.
Pour les valeurs uniques, tu as bien identifié les fonctions à utiliser : GroupBy() ou Distinct(). La contrainte qui va découler de l’utilisation de ces formules, c’est que tu vas changer la structure de la donnée affichée dans ta gallerie. Rien de bien grave, mais si tu as dans ton appli un formulaire avec dans item :
Gallery1.Selected
par exemple, cela ne fonctionnera plus.Avec GroupBy() :
SortByColumns(n GroupBy(n Filter([@PT_G];n StartsWith(Title;TextSearchBox1.Text)n && (Cmb_Sinistre.Selected.Value in Sinistre.Value n || Cmb_Sinistre.Selected.Value = Blank() )n && (Cmb_Administratif.Selected.Value in Administratif.Value n ||Cmb_Administratif.Selected.Value = Blank() )n && (Cmb_Vehicule.Selected.Value in Vehicule.Valuen || Cmb_Vehicule.Selected.Value = Blank() )n && (Cmb_Achat.Selected.Value in Achat.Value n || Cmb_Achat.Selected.Value = Blank () )n && (Cmb_Procedure.Selected.Value in Procedure.Value n || Cmb_Procedure.Selected.Value = Blank () )n && (Cmb_Sauvetage.Selected.Value in Sauvetage.Valuen || Cmb_Sauvetage.Selected.Value = Blank () )n n );"Title";"Doc")n ;"Title")n
Pour récupérer les données il faudra “dégrouper” l’enregistrement, idéalement en passant par une variable sur le OnSelect de ton icône, tu peux mettre :
Set(vSelectedDoc;First(Ungroup(ThisItem;"Doc")))
Pour la recherche sur tout le texte et pas seulement sur le début, tu peux remplacer dans ton filtre :
StartsWith(Title;TextSearchBox1.Text)
par
TextSearchBox1.Text in Title
Encore une fois, ce n’est pas délégable 😢
CommentID=InUPlp0R6taezmB, PostID=InKAt5e9tjAjxHu