Startseite > Techblog > Microsoft Sharepoint > Verwendung von [Me] in SPQuery-Objekten
mhy

In Ansichten von Listen besteht die Möglichkeit mittels Platzhalter [Ich] bzw. [Me] auf den aktuellen Nutzer zugreifen, um so in Ansichten Filter für die eigenen Elemente zu erstellen.

Möchte man als Entwickler den gleichen Ansatz auch für die programmatische Erzeugung von Views über SPView- bzw. SPQuery-Objekte verwenden wird man mit dem Ansatz

<Where><Eq><FieldRef Name='Author' /><Value Type='User'>[Me]</Value></Eq></Where>

scheitern, denn auf der Ebene von SPQuery-Objekten stehen die von der Oberfläche bekannten Platzhalter so nicht zur Verfügung.

Von Dave Hunter findet sich im MSDN-Forum ein guter Tipp, wie man die Entsprechungen in CAML ermitteln kann: Man erstellt eine neue Ansicht für eine Liste in der Benutzeroberfläche, in der man die gewünschten Filter definiert. Im Anschluss daran speichert man die Liste als Template und lädt sich die stp-Datei herunter. Nachdem man diese in eine cab-Datei umbenannt hat, findet man darin eine manifest-Datei, die die Liste und damit auch die Ansichten beschreibt. Mit einer Suche nach dem XML-Tag “Query” findet man das CAML für die Ansicht.
caml filtered by author

Und hier sieht man sehr schön die programmatische Entsprechung des definierten Filters. Um nach dem aktuellen Nutzer als Autor zu filtern, muss diese CAML-Query verwendet werden:

<Where><Eq><FieldRef Name='Author' /><Value Type="Integer"><UserID Type="Integer"/></Value></Eq></Where>

Mit diesem Wissen kann man nun ganz einfach selbst programmatisch SPView-Objekte erstellen, die auf den aktuellen Nutzer filtern können.

Kommentar Feed Trackback URL
Eine Antwort zu:
“Verwendung von [Me] in SPQuery-Objekten”
  1. Neuer Post zum Thema [Me] in SPQuery-Objekten: http://bit.ly/Ro0UW
    This comment was originally posted on Twitter

Hinterlassen Sie einen Kommentar

Tag Cloud

Unsere Themen

Kommentare

  • Christian Heindel: Hallo Volti, die Option “Verbindung mit ‘Dokumentbibliothek̵ 7; herstellen”...
  • volti: Hi, ich hab das beschriebene Probleme mit Outlook 2010, dort finde ich die Option Aktionen >...
  • Michael Wittwer: Hallo Guter Beitrag, bin seit kurzem auch mit Balsamiq am arbeiten und die Effizienz ist einfach...
  • Frank: Danke, tut und ist im Vergleich zur Atlassian Lösung abwärtskompatibel bis Confluence 2.10.
  • Ghost@: Danke für die schnelle Antwort Martin! Das ist natürlich ärgerlich, dass der Datentyp nicht unterstützt ist....

Twitter