SPScriptedFacetService – Umfang
Generiert ein Objekt mit Multichoice- oder Einzelauswahl-Aspekten für eine Quelle der erweiterten Suche.
Die API SPScriptedFacetService kann nur in einem Skript für Aspektgenerierung in einer Serviceportal-Suchquelle verwendet werden. Das Skript für Aspektgenerierung ist nur sichtbar, wenn Ist geskriptete Quelle ausgewählt ist.
Für diese Klasse ist kein Konstruktor vorhanden. Verwenden Sie stattdessen CreateFacet() Oder CreateMultiChoiceFacet() Methoden zum Generieren eines Aspektobjekts.
SPScriptedFacetService – createFacet(Zeichenfolgenbezeichnung, Zeichenfolgen-ID)
Erzeugt ein Aspekte-Objekt mit einfacher Auswahl.
Nach dem Erstellen des Aspektobjekts fügen Sie dem Aspekt mit Aspektelemente oder zugeordnete Abfragen hinzu AddFacetItem() Methode von SPScriptedFacet Klasse.
| Name | Typ | Beschreibung |
|---|---|---|
| label | Zeichenfolge | Bezeichnung für den Aspekt. |
| id | Zeichenfolge | ID für den Aspekt. |
| Typ | Beschreibung |
|---|---|
| Objekt | Aspekte-Objekt mit einfacher Auswahl. Gibt einen Fehler zurück, wenn:
|
Kann nur in einem Skript für Aspektgenerierung in einer erweiterten Service Portal-Suchquelle verwendet werden.
var stateFacet = facetService.createFacet("State", "state");
SPScriptedFacetService – createMultiChoiceFacet(Zeichenfolgenbezeichnung, Zeichenfolgen-ID)
Erstellt ein Aspekte-Objekt mit Mehrfachauswahl.
Nach dem Erstellen des Aspektobjekts fügen Sie dem Aspekt mit Aspektelemente oder zugeordnete Abfragen hinzu AddFacetItem() Methode von SPScriptedFacet Klasse.
| Name | Typ | Beschreibung |
|---|---|---|
| label | Zeichenfolge | Bezeichnung für den Aspekt. |
| id | Zeichenfolge | ID für den Aspekt. |
| Typ | Beschreibung |
|---|---|
| Objekt | Aspekte-Objekt mit Mehrfachauswahl. Gibt einen Fehler zurück, wenn:
|
function createMultiChoiceFacetFromKB(label, variable, values, orderBy){
if(!values || values.length == 0)
return;
var kbFacet = facetService.createMultiChoiceFacet(label, variable);
var kbMap = {};
for(var i in values) {
var key = values[i].label;
var value = values[i].id;
var parent = new KBParentData().getParentCategory(value, key);
key = parent.join(' > ');
kbMap[key] = value;
}
var labels = Object.keys(kbMap).sort();
for (i = 0; i < labels.length; i++) {
var currentLabel = labels[i];
kbFacet.addFacetItem(currentLabel, kbMap[currentLabel]);
//adds facet search options for each kbMap entry
}
}