SPScriptedFacetService : dans le champ d’application
Génère un objet de facettes à choix multiple ou à choix unique pour une source de recherche avancée.
L’API SPScriptedFacetService ne peut être utilisée que dans un script de génération de facette dans une Portail de services source de recherche. Le script de génération de facette n’est visible que lorsque Est une source scriptée est sélectionnée.
Il n’existe aucun constructeur pour cette classe. Utilisez plutôt les méthodes createFacet() ou createMultiChoiceFacet() pour générer un objet de facettes.
SPScriptedFacetService : createFacet(Étiquette de chaîne, ID de chaîne)
Crée un objet de facettes à choix unique.
Après avoir créé l’objet facets, ajoutez des éléments de facette ou des requêtes mappées à la facette à l’aide de la méthode addFacetItem() de la classe SPScriptedFacet.
| Nom | Type | Description |
|---|---|---|
| étiquette | Chaîne | Étiquette de la facette. |
| id | Chaîne | ID de la facette. |
| Type | Description |
|---|---|
| Objet | Objet à facettes à choix unique. Renvoie une erreur lorsque :
|
Elle ne peut être utilisée que dans un script de génération de facette dans une source de recherche avancée de Portail de services.
var stateFacet = facetService.createFacet("State", "state");
SPScriptedFacetService : createMultiChoiceFacet(Étiquette de chaîne, ID de chaîne)
Crée un objet de facettes à choix multiples.
Après avoir créé l’objet facets, ajoutez des éléments de facette ou des requêtes mappées à la facette à l’aide de la méthode addFacetItem() de la classe SPScriptedFacet.
| Nom | Type | Description |
|---|---|---|
| étiquette | Chaîne | Étiquette de la facette. |
| id | Chaîne | ID de la facette. |
| Type | Description |
|---|---|
| Objet | Objet à facettes à choix multiples. Renvoie une erreur lorsque :
|
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
}
}