SharePointCommunity
Die deutschsprachige Community für SharePoint, Microsoft 365, Teams, Yammer und mit Azure

Sponsored by

Willkommen im Forum Archiv.
Einträge sind hier nicht mehr möglich, aber der Bestand von 12 Jahren SharePoint-Wissen ist hier recherchierbar.




Textfilter auf Lookupfeld

Geprüfte Antwort Dieser Beitrag hat 4 Antworten

Ohne Rang
3 Beiträge
J Holz erstellt 24 Mai 2011 13:35
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

Hallo Community,

 

habe folgendes Problem mit dem SPD 2010. Ausgangsstellung ist folgende eine Webpartseite enthält ein Textfilterwebpart und eine View auf eine Liste (Projekte)mit einem Lookupfeld  auf eine weitere Liste (Kunden). Das Textfilterwebpart soll nun eine Suche auf diesem Lookupfeld ermöglichen. Mit dem SPD habe ich die Datensicht so nagepasst, daß das Lookupfeld nur noch als Text angezeigt wird. Die Webpartverbindungen sind erstellt und ein Filterung nach dem volständigen Inhalt des Lookupfeldes funktioniert auch. Jetzt soll das Ganze auch mit Teilzeichenketten funktionieren. Da das Feld aber vom Typ Lookup ist kann ich nicht wie bei einem Texttyp mit contains den XPath-Ausdruck anpassen.

Hat jemand eine Idee, wie ich den SPD dazu bewege das Lookupfeld auch wirklich als Textfeld darzustellen (damit die contains-Filterung möglich wird)??

 

Tausend Dank im Voraus

Alle Antworten

Ohne Rang
19231 Beiträge
Andi Fandrich Als Antwort am 24 Mai 2011 13:55
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

Mit ein paar Anpassungen im XSLT geht das auch mit einem Lookup. Der Text wird ja auch dargestellt, also kann man auch darauf zugreifen und mit contains() filtern. Schau doch mal im XSL, wie das Lookup dargestellt wird, dann solltest Du erkennen, wie Du an den Text rankommst.

Viele Grüße
Andi
af @ evocom de
Blog
Ohne Rang
3 Beiträge
J Holz Als Antwort am 24 Mai 2011 14:00
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

Hallo Andi,

danke für die schnelle Antwort.

Du meinst ich kann über SPD den Datentyp des Lookupfeldes nicht anpassen. Denn dort liegt das Problem, daß ich durch den Lookuptyp kein contains als Auswahl bekomme. Trotz der Textdarstellung bleibt eben der Typ in der Ansicht immer noch erhalten. Wie ich im XSL nach der Typdeklaration des Feldes suche ist mir noch nicht klar.

 

Ohne Rang
19231 Beiträge
Andi Fandrich Als Antwort am 24 Mai 2011 14:11
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

Nein, im SPD "zusammenklicken" geht hier nicht. Der Filter muß manuell im XSL eingebaut werden.

An das XSL kommst Du in der Quellcodeansicht (oder in der geteilten Ansicht). Wenn Du in der Vorschau etwas markierst und dann in die Codeansicht umschaltest, wird die passende Stelle markiert. Damit kannst Du Dir ansehen, wie ein normaler Filter gesetzt wird und das entsprechend für Dein Lookup umbauen.

Viele Grüße
Andi
af @ evocom de
Blog
Ohne Rang
3 Beiträge
J Holz Als Antwort am 24 Mai 2011 14:13
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

Hi Andi,

 

du hattest natürlich recht :-) einfach mal den Quellcode genauer anschauen ...

Also da gibt es eine CAML-Query für die Webpartverbindung. in der steht bisher als Filterung:

<Where>
     <Eq>
      <FieldRef Name="Firmenname"/>
      <Value Type="Text">{Param1}</Value>
     </Eq>
    </Where>

dann einfach aus dem Eq (equals) ein Conbtains machen und schon tut wie erwartet.

<Where>
     <Contains>
      <FieldRef Name="FirmennameNachschlag"/>
      <Value Type="Text">{Param1}</Value>
     </Contains>
    </Where>
Ich hatte die Hoffnung der SPD erkennt selbständig den geänderten Datentyp und passt die Auswahlmöglichkeiten zur Manipulation an, aber das war nix.

So geht's natürlich auch :-)