Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
Van toepassing op: Dynamics 365 Customer Service en Dynamics 365 Contact Center—alleen zelfstandige versies
Gebruik de KnowledgeArticle tabel om kennismanagementmogelijkheden in je Dynamics 365 Customer Service-oplossingen te integreren. Dit artikel beschrijft hoe je artikelen maakt, versies en vertalingen beheert, content publiceert en kennisartikelen integreert met andere klantenservice-instanties.
Prerequisites
Zorg dat je de vereiste rollen en privileges hebt.
Een kennisartikel maken
Wanneer u een kennisartikel-record maakt, creëert Dynamics 365 Customer Service intern een hoofdartikel voor het record. Het hoofdartikel fungeert als een container voor het primaire kennisartikel dat je maakt, samen met alle artikelversies en vertalingen die je in de toekomst mogelijk maakt. Het volgende diagram toont het tabelmodel voor de KnowledgeArticle tabel.
Wanneer je een knowledge article record maakt, maak je dat in de staat Draft . Door de nieuwe KnowledgeArticle tabel te gebruiken, kun je een artikel maken door de inhoud en opmaak in HTML-formaat te specificeren. U kunt uw eigen waarde opgeven voor het kenmerk KnowledgeArticle.
ArticlePublicNumber attribuut bij het programmatisch maken van een kennisartikelrecord. Anders wordt de waarde automatisch gegenereerd op basis van het formaat dat je hebt opgegeven in het Dynamics 365 Customer Service-instellingengebied in de webclient. De KnowledgeArticle.
ArticlePublicNumber Het attribuut slaat de ID op die zichtbaar is voor klanten, partners en andere externe gebruikers om naar kennisartikelen te verwijzen en deze op te zoeken. Het blijft hetzelfde in alle versies en vertalingen van kennisartikelen.
De volgende voorbeeldcode toont hoe u een record voor een kennisartikel kunt maken.
KnowledgeArticle newKnowledgeArticle = new KnowledgeArticle
{
Title = "Sample Knowledge Article",
Content = "<p>This is the article content.</p>"
};
knowledgeArticleId = _serviceProxy.Create(newKnowledgeArticle);
Console.WriteLine("Created {0}", newKnowledgeArticle.Title);
Een primaire en een secundaire versie van een kennisartikel maken
Wanneer je een knowledge article record aanmaakt, wordt de hoofdversie automatisch op 1 gezet en de kleine versie op 0. Gebruik het bericht CreateKnowledgeArticleVersion (Actie CreateKnowledgeArticleVersion of CreateKnowledgeArticleVersionRequest) om een hoofdversie of secundaire versie van een kennisartikel te maken. Stel in het verzoekbericht IsMajor in op true om een hoofdversie te maken, of stel deze in op false om een kleine versie te maken. Het nieuwe versierecord gebruikt de volgende attributen:
KnowledgeArticle.RootArticleIdom de koppeling met de record van het hoofdkennisartikel te behouden.KnowledgeArticle.PreviousArticleContentIdom naar de eerdere versie van de record te verwijzen.
De volgende voorbeeldcode laat zien hoe je met behulp van CreateKnowledgeArticleVersionRequest een primaire versie van een record van een kennisartikel kunt maken.
CreateKnowledgeArticleVersionRequest versionRequest = new CreateKnowledgeArticleVersionRequest
{
Source = new EntityReference(KnowledgeArticle.EntityLogicalName, knowledgeArticleId),
IsMajor = true
};
CreateKnowledgeArticleVersionResponse versionResponse = (CreateKnowledgeArticleVersionResponse)_serviceProxy.Execute(versionRequest);
Een vertaling van een kennisartikel maken
Gebruik Actie CreateKnowledgeArticleTranslation (Web API) of CreateKnowledgeArticleTranslationRequest (organisatieservice) om een vertaling voor een record voor een kennisartikel te maken. Je kunt je kennisartikel vertalen in meer dan 150 talen. Informatie over deze ondersteunde talen is beschikbaar in de nieuwe LanguageLocale tabel.
Lees meer in de LanguageLocale-tabel.
Door gebruik te maken van CreateKnowledgeArticleTranslation Action (Web API) of CreateKnowledgeArticleTranslationRequest (organisatieservice), maak je een nieuw kennisartikelrecord aan met de titel, inhoud, beschrijving en trefwoorden die van het bronrecord naar het nieuwe record zijn gekopieerd. Je stelt de taal van het nieuwe record in op degene die je in het verzoek hebt opgegeven. Je moet ook aangeven of de nieuwe plaat een grote of kleine versie is. De nieuwe record gebruikt het kenmerk KnowledgeArticle.
ParentArticleContentId om de koppeling met de record van het hoofdkennisartikel te behouden.
Als u dit bericht uitvoert en een respons krijgt, haalt u het kennisartikel op uit het responsobject, en werk vervolgens de titel, het onderwerp, de beschrijving en de trefwoorden bij om de vertaalde inhoud toe te voegen.
De volgende voorbeeldcode laat zien hoe je een kennisartikelvertaling kunt maken met behulp van CreateKnowledgeArticleTranslationRequest:
CreateKnowledgeArticleTranslationRequest translationRequest = new CreateKnowledgeArticleTranslationRequest
{
Source = new EntityReference(KnowledgeArticle.EntityLogicalName, knowledgeArticleId),
Language = new EntityReference(LanguageLocale.EntityLogicalName, languageLocaleId), //languageLocaleId = GUID of the Primary Key of LanguageLocale record
IsMajor = true // Creating a major version
};
CreateKnowledgeArticleTranslationResponse translationResponse = (CreateKnowledgeArticleTranslationResponse)_serviceProxy.Execute(translationRequest);
// Retrieve the new knowledge article record
KnowledgeArticle respObject = (KnowledgeArticle)_serviceProxy.Retrieve(KnowledgeArticle.EntityLogicalName,
translationResponse.CreateKnowledgeArticleTranslation.Id, new ColumnSet(true));
Opmerking
De GUID-waarde van de primaire sleutel (LanguageLocaleId) voor elke taalrecord in de entiteit LanguageLocale is hetzelfde voor alle Dynamics 365 Customer Service organisaties.
Levenscyclus van een kennisartikel: De status van een kennisartikel wijzigen
Tijdens de levenscyclus kan een kennisartikel zich in de volgende statussen bevinden:
0: Conceptversie (nadat je een kennisartikel hebt gemaakt)
1: Goedgekeurd (nadat je een kennisartikel hebt goedgekeurd)
2: Gepland (nadat je een kennisartikel hebt gepland om gepubliceerd te worden)
3: Gepubliceerd (nadat je een kennisartikel hebt gepubliceerd)
4: Verlopen (nadat een kennisartikel verloopt volgens de bij publicatie opgegeven vervaldatum)
5: Gearchiveerd (nadat je een kennisartikel hebt gearchiveerd)
6: Afgedankt (nadat je een kennisartikel hebt weggegooid)
Om de status van het artikel te wijzigen, moet u het bericht Update in de record voor het kennisartikel gebruiken om het kenmerk KnowledgeArticle.StateCode bij te werken. Voor u eerder gebonden typen gebruikt u de opsomming KnowledgeArticleState om de mogelijk statussen in te stellen. Lees meer in Voer gespecialiseerde operaties uit met Update.
De volgende voorbeeldcode toont hoe u een record voor een kennisartikel kunt publiceren.
// Retrieve the knowledge article record
KnowledgeArticle myKnowledgeArticle = (KnowledgeArticle)_serviceProxy.Retrieve(
KnowledgeArticle.EntityLogicalName, knowledgeArticleId, new ColumnSet("statecode"));
// Update the knowledge article record
myKnowledgeArticle.StateCode = KnowledgeArticleState.Published;
UpdateRequest updateKnowledgeArticle = new UpdateRequest
{
Target = myKnowledgeArticle
};
_serviceProxy.Execute(updateKnowledgeArticle);
Opmerking
statecode waarden zoals Concept (0) geven de levenscyclusfase van het artikel aan, en niet vertrouwelijkheid of zichtbaarheid. Gebruikers met de juiste lees- en schrijfrechten kunnen conceptartikelen raadplegen.
Een record voor een kennisartikel aan een exemplaar van een Dynamics 365 Customer Service-entiteit koppelen
Wanneer je embedded knowledge search inschakelt voor een tabel in Dynamics 365 Customer Service met behulp van de webclient, creëert het systeem automatisch een veel-op-veel relatie genaamd msdyn_<Entity_Name>_knowledgearticle. Gebruik deze relatie om een KnowledgeArticle instantie programmatisch te koppelen of te koppelen aan een Dynamics 365 Customer Service-tabelinstantie. Wanneer je een KnowledgeArticle instantie koppelt aan een tabelinstantie, maak je een record aan voor de relatie in een intersect-tabel genaamd msdyn_<Entity_Name>_knowledgearticle. Bijvoorbeeld, wanneer je een KnowledgeArticle instantie voor het eerst aan een Account instantie koppelt, maak je een intersect-tabel genaamd msdyn_account_knowledgearticle, en maak je een record aan met de associatiemapping in deze intersect-tabel. Standaard is de Incident (Case)-tabel ingeschakeld voor de embedded knowledge search. Wanneer je een KnowledgeArticle record aan een Incident record koppelt, maak je een associatierecord aan in de KnowledgeArticleIncident intersect-tabel.
In de volgende voorbeeldcode ziet u hoe u een exemplaar van KnowledgeArticle kunt koppelen aan een exemplaar van Account:
// Associate the knowledge article record with an account record
// Step 1: Create a collection of knowledge article records that will be
// associated to the account. In this case, we have only a single
// knowledge article record to be associated.
EntityReferenceCollection relatedEntities = new EntityReferenceCollection();
relatedEntities.Add(new EntityReference(KnowledgeArticle.EntityLogicalName, knowledgeArticleId));
// Step 2: Create an object that defines the relationship between knowledge article record and account record.
// Use the many-to-many relationship name (msdyn_account_knowledgearticle) between knowledge article
// record and account record.
Relationship newRelationship = new Relationship("msdyn_account_knowledgearticle");
// Step 3: Associate the knowledge article record with the account record.
_serviceProxy.Associate(Account.EntityLogicalName, accountId, newRelationship, relatedEntities);
De weergavetelling van het kennisartikel verhogen
Gebruik het IncrementKnowledgeArticleViewCountRequest bericht om het aantal weergaven van een kennisartikelrecord voor een bepaalde dag in de KnowledgeArticleViews tabel te verhogen. Als er voor een kennisartikel op een bepaalde dag geen record bestaat, maakt de bewerking een record aan en stelt de opgegeven waarde voor het aantal weergaven in de KnowledgeArticleViews in.
KnowledgeArticleView. Als er al een record bestaat voor een kennisartikel voor de opgegeven dag, verhoogt de operatie het aantal weergaven in de KnowledgeArticleViews.
KnowledgeArticleView van de bestaande record verhoogd.
Kennisartikelen doorzoeken met een zoekactie in volledige tekst
Kennisartikelen in Dynamics 365 Customer Service, inclusief hun versies en vertalingen, zijn geïndexeerd in volledige tekst en ondersteunen SQL Server zoeken in volledige tekst. Meer informatie over zoeken in volledige tekst vindt u in SQL Server: Zoeken in volledige tekst.
Gebruik het FullTextSearchKnowledgeArticleRequest bericht om kennisartikelen uit je applicaties te doorzoeken en de informatie te vinden die je zoekt. Het FullTextSearchKnowledgeArticleRequest bericht laat je inflectionele stammatching gebruiken (waardoor een andere tijd of verbuiging in plaats kan worden van de zoektekst) en querycriteria specificeren (door FetchXML of QueryExpression te gebruiken om filtering, ordening, sortering en paging te specificeren) om kennisartikelen met gespecificeerde tekst te vinden. U kunt ook besluiten meerdere versies van dezelfde artikelen in de zoekresultaten te verwijderen, en te filteren op de status van het kennisartikel terwijl u naar een tekst zoekt.
Afgeschafte kennisentiteiten
De volgende legacy-entiteiten zijn verouderd. Meer informatie in afgeschafte kennisentiteiten.
Vanaf 1 december 2020 kun je geen toegang meer hebben tot legacy knowledge entiteiten. Ga naar de KnowledgeArticle-tabel. Meer informatie vindt u in Kennisartikelen maken en beheren.
Voor hulp bij migratie kunt u de volgende bronnen gebruiken:
- Gebruik SDK, WebAPI of Microsoft Power Automate, afhankelijk van uw scenario's.
- Gebruik het hulpprogramma voor open source migratie met MIT-licentie.
Belangrijk
- Microsoft ondersteunt de open source migratietool niet. Je moet het misschien aanpassen aan je situaties.
- Voer altijd een testomgeving uit voordat u deze in productie neemt.
- Controleer de licentie en leesmij voordat u de tool gebruikt.