KBPortalServiceImpl: Global

  • Freigeben Version: Yokohama
  • Aktualisiert 30. Januar 2025
  • 1 Minute Lesedauer
  • Die KBPortalServiceImpl API ist in Wissensmanagement V3 [com.snc.knowledge3] als Skripteinbindung enthalten. Es bietet Methoden zur Verwendung mit Wissen, z. B. die Integration in eine anwenderdefinierte Suche.

    KBPortalServiceImpl – KBPortalServiceImpl()

    Instanziiert ein KBPortalServiceImpl-Objekt in einer globalen Anwendung.

    Tabelle : 1. Parameter
    Name Typ Beschreibung
    Keine

    KBPortalServiceImpl – getResultData (Objektanforderung)

    Gibt Suchergebnisse basierend auf Stichwörtern aus dem wissensartikel und aus relevanten Wissensblockinhalten zurück, auf die der Anwender Lesezugriff hat.

    Wenn Sie die Funktion „Wissensblöcke“ aktiviert haben und mit Ihrer Anwendung eine anwenderdefinierte Suche nach Wissen verwenden, gibt Ihre Suche möglicherweise keine relevanten Artikel zurück, wenn Stichwörter in den Blöcken enthalten sind. Um Suchergebnisse basierend auf Stichwörtern aus dem artikel und aus relevanten Blockinhalten zurückzugeben, auf die der Anwender Zugriff hat, müssen Sie aufrufen GetResultData() Methode in Ihrer anwenderdefinierten Suche.

    Tabelle : 2. Parameter
    Name Typ Beschreibung
    Anforderung Objekt JSON-Objekt zum Verfeinern der Suche.
    Tabelle : 3. Rückgaben
    Typ Beschreibung
    Objekt Array von Suchergebnissen im JSON-Format basierend auf Stichwörtern aus dem wissensartikel und aus relevanten Wissensblockinhalten, auf die der Anwender Lesezugriff hat.

    Integration einer anwenderdefinierten Suche mit Wissensblöcken

    function doKeywordSearch(queryText, count, queryLocation) {
      var results = [];
      
      // To set up the request.
      var request = {
        keyword: queryText,
        language: "",
    
        // To pass data to filter on different metadata.
        variables: {
          kb_knowledge_base: ['Knowledge'],
          kb_category: '',
          author: ['']
        },
     
        // Provide the following.
        context: gs.getProperty('glide.knowman.sp.search_context', 'Knowledge Search'),
        resource: 'Knowledge',
        order: "relevancy,true",
    
        // Provide the pagination variables.
        start: queryLocation,
        end: queryLocation+count,
    
        attachment: false,
    
        // Provide any additional metadata you want to include in your results.
        knowledge_fields: [
          "number",
          "sys_id",
          "published"
        ]
      };
    
      // To execute the search.
      var response = new KBPortalServiceImpl();
      response.getResultData(request);
    
      // To send the search results back to the UI or to store results in your object.
      for (var i = 0; i < response.results.length; i++) {
        result = response.results[i];
        var article = {};
        article.sys_id = result.meta.sys_id.display_value;
        article.number = result.meta.number.display_value;
        article.short_description = article.short_description;
        article.title = result.title;
        article.published = result.meta.published.display_value;
        article.publishedUTC = result.meta.published.display_value;
        article.text = article.text;
        article.score = result.meta.score;
        article.label = article.short_description;
        article.shortDescription = article.short_description;
        results.push(article);
      }
    
      return results;
    }