Del via


Søge i videnartikelindhold af vedhæftede filer

Du kan bruge vedhæftede filer med videnartikel til at medtage tilgængelige filer, der kan downloades, i vidensbaseartikler. Du kan også bruge webfiler til at oprette en side med ofte stillede spørgsmål med indhold, der kan hentes.

Vigtigt

Der kan søges i de filer, der er tilknyttet vidensartikler. Du kan ikke søge i de filer, der er tilknyttet webfiler.

Du kan konfigurere dit Power Pages-websted til at give brugere mulighed for at søge i indholdet af vedhæftede filer i videnbaseartikler. Det hjælper brugerne med at finde de oplysninger, de har brug for.

I vidensbaseartikler indekseres alle vedhæftede filer, der har et defineret præfiks.

Hvis du vil indeksere de vedhæftede filer med videnartikel, skal du oprette følgende webstedsindstillinger og angive deres værdi Sand:

Indstilling for websted Beskrivelse
Search/IndexNotesAttachments Angiver, om indholdet af vedhæftede filer til vidensbaseartikler skal indekseres. Som standard er den sat til falsk.
KnowledgeManagement/DisplayNotes Angiver, om du vil vise vedhæftede filer til vidensbaseartikler. Som standard er den sat til falsk.

Når du søger efter et udtryk, omfatter søgeresultatet også vedhæftede filer. Hvis søgeordet stemmer overens med en vedhæftet fils videnartikel, angives linket til den pågældende videnbaseartikel også. Hvis du vil se vedhæftede filer, der kan hentes, skal du vælge Downloads under Posttype i venstre rude. Hvis du vil redigere etiketten for Downloads, skal du redigere indholdskodestykket Søg/Facet/Downloads. Værdien er som standard angivet til Downloads.

Bemærk

Dataverse-søgning skal være aktiveret i miljøet, for at denne funktion kan bruges.

Søge gennem vedhæftede filer i vidensartikel

Hvis dit websted bruger Lucene .NET søgning, kan du kan aktivere webstedet til at søge i vedhæftede filer i vidensartikel ved at indstille Synkroniser vedhæftede filer i vidensartikel med websted til Ja i Dynamics 365 Customer Service Administration eller Kundeservicehub-appen. Du behøver ikke at konfigurere denne indstilling, hvis dit websted bruger Dataverse-søgning, men du kan som standard søge i vedhæftede filer til vidensartikel.

Det gør det muligt for at søge i vedhæftede filer i vidensartikel og gøre oplysninger let tilgængelige for vidensforbrugere. Med denne nye funktion til vedhæftede filer skal du ophøre med at bruge vedhæftede noter til webstedet. Vedhæftede filer i videnartikel synkroniseres automatisk med de vedhæftede noter. Flere oplysninger: Opdater vedhæftede filer i videnartikel med portal

Opdatere webstedskonfigurationer

Hvis du allerede har et webstedet fra før april 2018, og du har opgraderet dit webstedet til den nyeste version, skal du bruge følgende konfigurationer for at få den samme brugeroplevelse som i en ny installation.

Indholdskodestykker

Hvis du vil ændre den etiket, der vises i søgeresultaterne om anmærkninger og hentning af webfiler, skal du oprette indholdskodestykket Søg/Facet/Downloads og derefter angive dets værdi efter behov. Standardværdien er Downloads.

Webskabeloner

Webskabelonen Skabelon til facetteret søgning - resultater ændres til at vise filer, der er knyttet til vidensbaseartikler som primære søgeresultatelementer et link til relaterede artikel. Du skal opdatere webskabelonen Skabelon til facetteret søgning - resultater til følgende kilde:

{% assign openTag = '{{' %}
{% assign closingTag = '}}' %}
{%raw%}
  <script id="search-view-results" type="text/x-handlebars-template">
    {{#if items}}
      <div class="page-header">
        <h2>{%endraw%}{{openTag}} stringFormat "{{ resx.Search_Results_Format_String }}" firstResultNumber lastResultNumber itemCount {{closingTag}}{%raw%}
          <em class="querytext">{{{query}}}</em>
          {{#if isResetVisible}}
            <a class="btn btn-default btn-sm facet-clear-all" role="button" title="{%endraw%}{{ snippets['Search/Facet/ClearConstraints'] | default: res['Search_Filter_Clear_All'] }}{%raw%}" tabIndex="0">{%endraw%}{{ snippets['Search/Facet/ClearConstraints'] | default: res['Search_Filter_Clear_All'] }}{%raw%}</a>
          {{/if}}
        </h2>
      </div>
      <ul>
        {{#each items}}
          <li>
            <h3><a title="{{title}}" href="{{url}}">{{#if parent}}<span class="glyphicon glyphicon-file pull-left text-muted" aria-hidden="true"></span>{{/if}}{{title}}</a></h3>
            <p class="fragment">{{{fragment}}}</p>
            {{#if parent}}
              <p class="small related-article">{%endraw%}{{ resx.Related_Article }}{%raw%}: <a title="{{parent.title}}" href="{{parent.absoluteUrl}}">{{parent.title}}</a></p>
            {{/if}}
            <ul class="note-group small list-unstyled">
            {{#if relatedNotes}}
              {{#each relatedNotes}}
                <li class="note-item">
                  {{#if isImage}}
                    <a target="_blank" title="{{title}}" href="{{absoluteUrl}}"><span class="glyphicon glyphicon-file" aria-hidden="true"></span>&nbsp;{{title}}</a>
                  {{else}}
                    <a title="{{title}}" href="{{absoluteUrl}}"><span class="glyphicon glyphicon-file" aria-hidden="true"></span>&nbsp;{{title}}</a>
                  {{/if}}
                  <p class="fragment text-muted">{{{fragment}}}</p>
                </li>
              {{/each}}
            {{/if}}
            {{#if relatedAttachments}}
              {{#each relatedAttachments}}
                <li class="note-item">
                  {{#if isImage}}
                    <a id="kbattachment-{{entityID}}" href="javascript:downloadKbAttachmentFile('kbattachment-{{entityID}}', '{{title}}', {{fileSize}}, '{{fileType}}', '{{downloadBlockUrl}}', '{{initializeDownloadUrl}}')"><span class="glyphicon glyphicon-file" aria-hidden="true"></span>&nbsp;{{title}}</a>
                  {{else}}
                    <a id="kbattachment-{{entityID}}" title="{{title}}" href="javascript:downloadKbAttachmentFile('kbattachment-{{entityID}}', '{{title}}', {{fileSize}}, '{{fileType}}', '{{downloadBlockUrl}}', '{{initializeDownloadUrl}}')"><span class="glyphicon glyphicon-file" aria-hidden="true"></span>&nbsp;{{title}}</a>
                  {{/if}}
                  <p class="fragment text-muted">{{{fragment}}}</p>
                </li>
              {{/each}}
            {{/if}}
            </ul>
          </li>
        {{/each}}
      </ul>
    {{else}}
      <h2>{%endraw%}{{ resx.Search_No_Results_Found }}{%raw%}<em class="querytext">{{{query}}}</em>
        {{#if isResetVisible}}
          <a class="btn btn-default btn-sm facet-clear-all" role="button" title="{%endraw%}{{ snippets['Search/Facet/ClearConstraints'] | default: res['Search_Filter_Clear_All'] }}{%raw%}" tabIndex="0">{%endraw%}{{ snippets['Search/Facet/ClearConstraints'] | default: res['Search_Filter_Clear_All'] }}{%raw%}</a>
        {{/if}}
      </h2>
   {{/if}}
  </script>
  <script type="text/javascript">
    function downloadKbAttachmentFile(attachmentElementId, fileName, fileSize, mimeType, downloadBlockUrl, initializeUrl) {
      // Download block API supports max 4MB block size
      const blockSizeInBytes = 4096 * 1024;
      const totalNumberOfBlocks = parseInt(fileSize / blockSizeInBytes + 1);
      var fileContinuationToken = "";
      var contentString = "";
      var numberOfBlocksDownloaded = 0;
      var blockNumberToContentMap = {};
      function downloadBlockCallback(i, result) {
        numberOfBlocksDownloaded++;
        blockNumberToContentMap[i] = result;
        if (numberOfBlocksDownloaded == totalNumberOfBlocks) {
          for (var j = 0; j < totalNumberOfBlocks; j++) {
            contentString += blockNumberToContentMap[j];
          }
          var isImage = mimeType.startsWith('image/');
          const attachmentElement = document.getElementById(attachmentElementId);
          if (isImage) {
            const bodyByteString = atob(contentString);
            const bodyBuffer = new ArrayBuffer(bodyByteString.length);
            const bodyView = new Uint8Array(bodyBuffer);
            for (var k = 0; k < bodyByteString.length; k++) {
              bodyView[k] = bodyByteString.charCodeAt(k);
            }
            var imageUrl = URL.createObjectURL(new Blob([bodyBuffer], { type: mimeType }));
            attachmentElement.href = imageUrl;
            attachmentElement.target = "_blank";
          }
          else {
            const linkSource = 'data:' + mimeType + ';base64,' + contentString;
            attachmentElement.href = linkSource;
            attachmentElement.download = fileName;
          }
          attachmentElement.click();
        }
      }
      shell.ajaxSafePost({
        type: 'GET',
        url: initializeUrl,
        success: function (result) {
          fileContinuationToken = encodeURIComponent(result);
          for (var i = 0; i < totalNumberOfBlocks; i++) {
            url = downloadBlockUrl + "&blockNumber=" + i + "&fileContinuationToken=" + fileContinuationToken + "&blockSize=" + blockSizeInBytes;
            var x = downloadBlockCallback.bind(this,i);
            shell.ajaxSafePost({
              type: 'GET',
              url: url,
              success: (result) => { x(result) }
            });
          }
        }
      });
    }
  </script>
{%endraw%}

Indstillinger for websted

Du skal føje værdien \_logicalname:annotation~0.9^0.25 til indstillingen Søge-/forespørgselswebsted. Når den er tilføjet, skal værdien være på følgende måde:

+(@Query) \_title:(@Query) \_logicalname:knowledgearticle~0.9^0.3 \_logicalname:annotation~0.9^0.25 \_logicalname:adx_webpage~0.9^0.2 -\_logicalname:adx_webfile~0.9 adx_partialurl:(@Query) \_logicalname:adx_blogpost~0.9^0.1 -\_logicalname:adx_communityforumthread~0.9

Hvis du vil konfigurere facetter til at gruppere anmærkninger, der er knyttet til vidensbaseartikler og webfiler i en enkelt facetten, skal du redigere webstedsindstilling Søg/RecordTypeFacetsEntities og føje ;Downloads:annotation,adx_webfile til dens værdi.

Hvis vedhæftede filer, der er knyttet til vidensartikler, skal vises i webstedet og søgeresultaterne, skal du redigere webstedsindstillingen KnowledgeManagement/DisplayNotes og indstille dens værdi til Sand. Wedstedsindstillingen KnowledgeManagement/NotesFilter indeholder en præfiksværdi, der skal angives som præfiks i notetekstfeltet. Det er kun noter med den angivne præfiksværdi, der vises på websiden. Værdien er som standard *WEB*, men du kan ændre den via webstedsindstillingen.

Hvis ud vil aktivere indeksering af vedhæftede filer, der er knyttet til noter, skal du oprette webstedsindstillingen Search/IndexNotesAttachments og indstille værdien til Sand.