In einen anderen Artikel hatte ich bereits die Möglichkeit vorgestellt, den Verfeinerungswebpart um eigene Metadaten anzupassen. Dazu waren verwaltete Eigenschaften notwendig. (In dem Beispiel ging es um die zusätzliche Spalte Abteilung). Diese verwaltete Eigenschaft mache ich mir zu nutze um in der erweiterten Suche ein direktes Suchen zu erlauben.
Wie es zu erwarten war, funktioniert das nur über über XML. In den Eigenschaften des Webparts für “Feld für erweiterte Suche” findet man unter Eigenschaften das betreffende XML Dokument, das die Auswahl der Eigenschaften steuert.
Der Knoten Resultytypes steuert den Ergebnistyp (Alle Ergebnisse, Dokumente, etc.) Bei Auswahl werden die jeweiligen Eigenschaften aus dem dazugehörigen PropertyRef Knoten ausgelesen und bieten in den Filter für die “Einschränkung der Eigenschaft” an. Damit die Suche überhaupt weiß, welche Metadaten gemeint sind, müssen diese noch in dem Knoten PorpertyDefs bekannt gemacht werden.
Also beginnt man günstiger weise so, indem man zu den PorpertyDefs einen neuen Knoten hinzufügt, der auf die verwaltete Eigenschaft verweist.
<PropertyDef Name=“Abteilung“ DataType=“text“ DisplayName=“Abteilung“ />
Der Displayname ist anschlissend die Bezeichnung, die im Browser zu sehen sein wird. Der Name muss dem der verwalteten Eigenschaft entsprechen.
Als nächstes ergänzen wir den Ereignistyp, dassbei jedem Ergebnistyp nach Abteilung gefiltert werden kann.
<ResultType DisplayName="Alle Ergebnisse" Name="default">
<KeywordQuery />
<PropertyRef Name="Author" />
<PropertyRef Name="Description" />
<PropertyRef Name="FileName" />
<PropertyRef Name="Size" />
<PropertyRef Name="Path" />
<PropertyRef Name="Write" />
<PropertyRef Name="CreatedBy" />
<PropertyRef Name="ModifiedBy" />
<PropertyRef Name="Abteilung" />
</ResultType>
Möchte man das auch bei anderen Ereignistypen so haben, müssen ebenfalls die Resulttype Knoten um
<PropertyRef Name="Abteilung" />
ergänzt werden.
Fertig!