Der folgende Beitrag beschreibt, wie man in einem Formularwebpart einen Joker für die Anzeige aller Listenelemente verwenden kann. Damit kann man in einer Liste nach bestimmten Zeichen selektieren und wieder auf eine Gesamtanzeige aller Elemente zurück schalten.
Die folgenden Grafiken zeigen das Ergebnis wenn nach dem Feld Kunde1 gefiltert werden soll.
Startbild
Suche nach Zeichenfolgen im Kundennamen
Um den gezeigten Effekt zu erzielen, muss man den Joker * benutzen können, ohne dass dieser im Kundennamen vorhanden ist. Eine mögliche Lösung, die auch praktikabel ist, besteht darin, in die Liste ein Feld einzufügen, welches standardmäßig mit einem * aufgefüllt ist. Die Spalte ist wie im folgenden Bild gezeigt definiert.
Die Spalte AlleFlag muss einen Inhalt haben und wird mit einem Stern vorbelegt. Sie wird in den Ansichten der Liste nicht benutzt und ist damit bei der Erfassung eines neuen Elementes immer mit * vorbelegt und wird auch nicht versehentlich überschrieben.
Gehen Sie nun in den folgenden 7 Schritten vor
1. Fügen Sie ein Formularwebpart und ein ListViewWebpart auf Ihre Seite ein
2. Wandeln Sie im SharePoint Designer das ListViewWebpart in eine XSLT Datenansicht um.
3. Bearbeiten Sie den Quellcode des Formularwebpart wie in der folgenden Grafik gezeigt. Wechseln Sie dazu im Web-Interface über Websiteaktionen/Seite bearbeiten in den Bearbeitungsmodus.Wählen Sie dann für das Formularwebpart Bearbeiten/Freigegebenes Webpart bearbeiten und dann Quelltext-Editor
Beachten Sie hier den Namen des Input-Feldes T1.
4. Definieren Sie nun für die XSLT Datenansicht einen Parameter. Wählen Sie dazu Aufgaben von Data View und dann Parameter.
5. Definieren Sie den Parameter über Neuer Parameter
Beachten Sie, dass der Parameter Param1 mit dem Stern * vorbelegt sein muss.
6. Definieren Sie jetzt eine Webpartverbindung zwischen DataView und den Formularwebpart über Aufgaben von Data View und dann Webpartverbindungen.
7. Definieren Sie nun den gezeigten Filter über Aufgaben von Data View und dann Filterkriterien
Das Filterkriterium für AlleFlag könnte auch auf enthält gesetzt sein. Im hier gezeigten Beispiel sind Sie offen für weitere Filter.
Jetzt haben Sie die Möglichkeit, den * als Joker für “Zeige alle Kunden” zu verwenden.
Was könnte als nächstes Folgen:
- Mehrere Listenfelder filtern
- Die Zahl der Joker erweitern, z.B. # um die Selektion nach mehreren Feldern aufzuheben bzw. zu ermöglichen
Viel Spaß mit der neuen Funktionalität.
