SPScriptedFacetService : délimité

  • Rversion finale: Australia
  • Mis à jour 12 mars 2026
  • 1 minute de lecture
  • Génère un objet de facettes à choix multiples 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 facettes d’une Portail de services source de recherche. Le script de génération de facettes n’est visible que lorsque Est une source scriptée est sélectionné.

    Il n’existe aucun constructeur pour cette classe. Utilisez plutôt les méthodes createFacet() ou createMultiChoiceFacet() pour générer un objet facets.

    SPScriptedFacetService : createFacet(Étiquette de chaîne, ID de chaîne)

    Crée un objet de facettes à choix unique.

    Après avoir créé l’objet de facettes, 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 .

    Tableau 1. Paramètres
    Nom Type Description
    étiquette Chaîne Étiquette de la facette.
    id Chaîne ID de la facette.
    Tableau 2. Renvoie
    Type Description
    Objet Objet de facettes à choix unique. Renvoie une erreur lorsque :
    • Une étiquette ou un ID en double a été trouvé.
    • Une étiquette ou un ID n’est pas défini.

    Ne peut être utilisé que dans un script de génération de facette d’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 de facettes, 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 .

    Tableau 3. Paramètres
    Nom Type Description
    étiquette Chaîne Étiquette de la facette.
    id Chaîne ID de la facette.
    Tableau 4. Renvoie
    Type Description
    Objet Objet de facettes à choix multiples.

    Renvoie une erreur lorsque :

    • Une étiquette ou un ID en double a été trouvé.
    • Une étiquette ou un ID n’est pas défini.
    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
      }
    }