Meilleur auteur de réponses
[Sharepoint Designer] Problème Critère de filtre XSLT

Question
-
Bonjour,Pour un webpart de bibliothèque, je dois filtrer les éléments pour l'utilisateur.Dans Sharepoint designer, en plus du filtre que j'ai déjà mis (via le webpart en XSL) je dois pouvoir filtrer un champ sur une liste de possibilité (nomalement dans une ArrayList)!Je ne vois pas comment faire.J'avais pensé faire "monChamp" peut avoir les valeurs "U1-U2-U3"(liste des valeurs possibles séparées par des '-')!Mais bon cette option n'existe pas :xMerci d'avance.
- Modifié OminiuS vendredi 4 décembre 2009 08:59
Réponses
-
Alors, j'ai essayé de récupérer ma chaine de trie en XSLT via un paramètre "Chaine de recherche" que j'ai ajouté afin de récupérer directement dans l'url les champs sur lequel je dois trier!Voici mon URL http:/MONSITE/Structure/MAG_CG.aspx?traitementSite=true&ListUC=UC037-UC027-UC113-UC057-UC054Mon paramètre est ListUC, en XSL ça donne :
<ParameterBindings> <ParameterBinding etc...> <ParameterBinding Name="ListUC" Location="QueryString(ListUC)" DefaultValue=""/> </ParameterBindings>
et dans <xsl:stylesheet><xsl:param name="ListUC" />
Dans mon filtre de trie, je coche "Ajouter un filtre XSLT" et j'ai mis [contains($ListUC, @UC0)] où $ListUC correspond a mon paramètre XSLT ci dessus et @UC0 correspond à la valeur UC0xx (une seule) que je peux trouver dans mes colonnes.J'obtiens sous SharePoint Designer l'erreur suivante :Echec de la définition de la feuille de style du processeur 0x80005004Impossible de résoudre une référence à une variable ou paramètre dvt_HideGroupDetailLa variable ou le paramètre ne sont peut être pas définis ou sont absent de la portéeJe ne comprend pas pourquoi!Merci d'avance.- Marqué comme réponse OminiuS vendredi 4 décembre 2009 13:39
Toutes les réponses
-
Bonsoir,
J'ai moi aussi un probleme sur le filtrage dans une liste. J'aimerais filtrer sur plusieurs colonnes et cumuler les filtre comme les filtres sharepoint de base.
Néanmoins, je me suis penché sur une solution qui peut etre pour toi te convriendrais mais avec laquelle on ne peut pas filtrer sur plusieurs criteres.
Par contre elle accepte de filtrer sur une partie d'un mot simplement.
Il faut utiliser la propriété FilterName= le nom interne de ta colonne et FilterMultiValue= le mot à rechercher
Ces propriétés viennent complété l'url en cours pour effectuer les filtres. On auras ainsi par exemple :
blablaurl.aspx?FilterName=Title&FilterMultiValue=*test*
Pour ma part j'avais réaliser cela via le javascript et un formulaire html dans une web part editeur de contenu.
J'en profite pour demander si quelqu'un connais une méthode de filtrage sur plusieurs critères et qui peut se faire sur une partie du mot.. -
Bonjour,
J'aurais tendance à dire que pour effectuer ceci, il faudrait :
1. utiliser un webpart de filtre (disponible dans la version enterprise de moss 2007) :
http://msdn.microsoft.com/en-us/library/ms494838.aspx
2. utiliser un webpart gratuit ou payant permettant d'effectuer ceci
ex : http://www.codeplex.com/DropdownSharePoint (à tester en environnement de développement)
(et http://bilbroblog.com/sharepoint/dropdown-list-box-filter-web-part-in-sharepoint-ndash-part-one/)
3. ou développer un webpart de filtre qui fournit l'information au webpart consommateur que vous êtes en train de faire
http://msdn.microsoft.com/en-us/library/bb457205.aspx
Pierre Vivier-Merle - MVP MOSS 2007 - http://blogs.developpeur.org/pierre- Proposé comme réponse - Pierre Vivier-Merle - mardi 1 décembre 2009 23:06
-
Bonjour,
heu j'ai l'impression que ces méthodes ne correspondent pas à ce que je veux, c-a-d une filtrage sur une partie du mot via des textbox et pouvoir cumuler plusieurs filtres l'un apres l'autre.
Mais peu etre que ominius sera rassasié :p
Pour ma part, je tente une technique plutot complexe et je me demande si j'arriverais a faire quelque chose la dessus.. -
Bonjour,je résume un peu comment quel est le comportement que je cherche :J'ai un utilisateur qui est affecté a plusieurs UC : UC001, UC005, UC036 etcccles documents qui sont affecté a un et un seul UC.Donc je veux voir toutes les fiches de l'utilisateur correspondants à ses UC!Merci d'avance.
-
Bonjour,
Je n'arrive pas à cerner ton probleme.. mais j'ai aujourd'hui trouvé un code qui m'a beaucoup plus!
peu etre que tu pourras y trouver ton bonheur comme moi..
http://instantlistfilter.codeplex.com/ -
Merci HeB91, mais ce n'est pas ce que je veux!Une solution, je pense serai de faire une boucle sur ma requete CAML du SharePoint:SPDataSource SelectCommandIl me fat reprendre la requete du SelectCommand et la completer par des
<Or> <Eq> <FieldRef Name='UC' /> <Value Type='Computed'>UC037</Value> </Eq> < Eq > <FieldRef Name='UC' /> <Value Type='Choice'>UC001</Value> </Eq > </Or>
Que je ferai boucler dans ma page SharePoint .aspx.Est-ce possible?Y a-t'il une autre solution?Merci d'avance -
-
Ok, bon ben voila on m'avais passé ce lien sur un autre forum. peu etre il te servira plus qu'à moi!
http://blogs.msdn.com/sharepointdesigner/archive/2008/02/25/filtering-and-formatting-with-date-values.aspx#cond_fmt_calc_field -
Merci, mais non!pour l'instant j'essaie tant bien que mal à refaire ma requête dans une balise <Script> de ma page aspx, mais je n'arrive pas a alimenter le SelectCommand de mon <SharePoint:SPDataSource> en utilisant son ID et le <%= %>Des idées pour parvenir a n'importe quel moyen a ma solution?
-
Alors, j'ai essayé de récupérer ma chaine de trie en XSLT via un paramètre "Chaine de recherche" que j'ai ajouté afin de récupérer directement dans l'url les champs sur lequel je dois trier!Voici mon URL http:/MONSITE/Structure/MAG_CG.aspx?traitementSite=true&ListUC=UC037-UC027-UC113-UC057-UC054Mon paramètre est ListUC, en XSL ça donne :
<ParameterBindings> <ParameterBinding etc...> <ParameterBinding Name="ListUC" Location="QueryString(ListUC)" DefaultValue=""/> </ParameterBindings>
et dans <xsl:stylesheet><xsl:param name="ListUC" />
Dans mon filtre de trie, je coche "Ajouter un filtre XSLT" et j'ai mis [contains($ListUC, @UC0)] où $ListUC correspond a mon paramètre XSLT ci dessus et @UC0 correspond à la valeur UC0xx (une seule) que je peux trouver dans mes colonnes.J'obtiens sous SharePoint Designer l'erreur suivante :Echec de la définition de la feuille de style du processeur 0x80005004Impossible de résoudre une référence à une variable ou paramètre dvt_HideGroupDetailLa variable ou le paramètre ne sont peut être pas définis ou sont absent de la portéeJe ne comprend pas pourquoi!Merci d'avance.- Marqué comme réponse OminiuS vendredi 4 décembre 2009 13:39
-