Freitextsuche für benutzerdefinierte Benutzereigenschaften (Free text query for custom user properties)
avatar

Allgemein

In vielen Szenarien ist es sinnvoll, die Benutzerprofile in SharePoint um weitere Eigenschaften zu erweitern, z.B. um eine Eigenschaft “Produktkenntnisse“, damit jede Person dort die Produkte aufführen kann, mit denen sie sich auskennt und andere Personen die Möglichkeit haben, diese Personen über die Personensuche zu finden, wenn sie Fragen zu einem bestimmten Produkt haben.

Voraussetzung für das Finden von den benötigten Personen ist es natürlich, dass bei der Suche nach einem bestimmten Begriff, in diesem Fall einem Produkt, auch alle Personen aufgelistet werden, bei denen der Begriff bzw. das Produkt in den jeweiligen Eigenschaften hinterlegt ist.

Die Suchabfrage soll dabei möglichst einfach sein, damit auch Personen ohne tiefe SharePoint Kenntnisse schnell und erfolgreich die benötigten Personen finden, dementsprechend sollten diese Personen bereits mit einer Freitextsuche auffindbar sein.

Um das erfolgreiche Auffinden von Personen mit Hilfe einer Freitextsuchabfrage geht es in diesem Blogbeitrag, denn es gibt eine entscheidende Konfiguration bei der Einrichtung zusätzlicher Benutzereigenschaften bzw. der dazugehörigen verwalteten Eigenschaften (Managed Properties), welche unbedingt vorgenommen werden muss, um dies zu ermöglichen.

Erstellung und Konfiguration benutzerdefinierter Benutzereigenschaft sowie notwendiger verwalteter Eigenschaft

Da der Fokus diese Blogbeitrags auf der soeben angesprochenen Konfiguration liegt, werde ich die notwendigen Schritte bis zu dieser Konfiguration nur oberflächlich erklären.

Um eine zusätzliche Eigenschaft zum Benutzerprofil hinzuzufügen, ist es notwendig diese Eigenschaft zuerst in der Benutzerprofildienstanwendung (User Profile Service) zu den Benutzereigenschaften (User Properties) hinzuzufügen und diese dann in dem gewünschten Bereich an der gewünschten Position zu platzieren.

Im nächsten Schritt muss dann eine neue verwaltete Eigenschaft (Managed Property) erstellt werden, in diesem Fall “HVProduktkenntnisse”, welche mit der durchforsteten Eigenschaft (Crawled Property) gemappt wird, bei der durchforsteten Eigenschaft handelt es sich um die hinzugefügte Benutzereigenschaft, in diesem Fall “Produktkenntnisse”.

Diese verwaltete Eigenschaft muss durchsuchbar (searchable), abfragbar (queryable) und abrufbar (retrievable) sein. Sofern Sie auch in den Verfeinerungsbereich (Refinement Panel) der Suchergebnisseite der Personensuche aufgenommen werden soll, muss sie zusätzlich einschränkbar (refinable) sein. Die Tokennormalisierung (Token Normalization) sollte ebenfalls aktiviert sein.

Sofern man die Konfiguration an dieser Stelle abschließt und anschließend ein vollständige Durchforstung (Full Crawl) der Personen Inhaltsquelle (Content Source) durchgeführt ist eine Freitextsuche nach Informationen in der Benutzereigenschaft bzw. der verwalteten Eigenschaft nicht möglich, es können lediglich Ergebnisse unter Verwendung der verwalteten Eigenschaft in der Suchabfrage gefunden werden.

Beispiel

Wenn ich in meinem Profil in der Benutzereigenschaft „Produktkenntnisse“ z.B. “SharePoint” hinterlege und dann eine Personensuche nach „SharePoint“ ausführe, taucht mein Profil nicht in den Suchergebnissen auf. Suche ich allerdings nach „HVProduktkenntnisse:SharePoint“ so wird mein Profil als Ergebnis angezeigt.

Um auch bei einer einfachen Personensuche nach „SharePoint“ mein Profil als Ergebnis zurückgeliefert zu bekommen, ist folgenden zusätzliche Anpassung der verwalteten Eigenschaft notwendig.

Standardmäßig wird eine neu erstellte verwaltete Eigenschaft dem „Standard Volltextindex“ hinzugefügt, allerdings muss sie in diesem Fall dem „Personen Volltextindex“ hinzugefügt werden.

Dafür müssen die erweiterten durchsuchbaren Einstellungen (Advanced Searchable Settings) der verwalteten Eigenschaft angepasst werden.

clip_image001

Und zwar dahingehend, dass der Volltextindex von „Standard“ auf „PeopleIdx“ gesetzt wird.

image

Abschließend muss die Konfiguration der verwalteten Eigenschaft gespeichert und erneut eine vollständige Durchforstung der Personen Inhaltsquelle durchgeführt werden.

Führen ich dann im Anschluss erneut eine Personensuche nach „SharePoint“ durch, wird mein Profil als Ergebnis zurückgeliefert, ohne das ich explizit die verwaltete Eigenschaft in der Suchabfrage verwende.

Schreibe einen Kommentar