Partajați prin


Lucrul cu articole din baza de cunoștințe

Noua experiență de cunoaștere în Dynamics 365 Customer Service vă permite să creați articole din baza de cunoștințe bogate, împreună cu asistență pentru versiuni și traduceri. Noua experiență de cunoaștere folosește entitatea KnowledgeArticle pentru a stoca și gestiona cunoștințele nativ în Dynamics 365 Customer Service.

Notă

Entitățile KBArticle, KBArticleTemplate și KBArticleComment sunt acum perimate. Asta înseamnă că nu ne așteptăm să continuați utilizarea acestor entități. Trebuie să utilizați entitatea KnowledgeArticle mai recentă pentru gestionarea cunoștințelor în Dynamics 365 Customer Service. Pentru mai multe perimatinformații, consultați secțiunea Entități pentru cunoștințe perimate la finalul acestui subiect.

Creați un articol de cunoștințe

Când creați o înregistrare de articol din baza de cunoștințe, Dynamics 365 Customer Service creează intern un articol rădăcină pentru înregistrare. Articolul rădăcină acționează ca un container pentru articolul din baza de cunoștințe primar creat de dvs. împreună cu toate versiunile și traducerile articolului pe care le-ați putea crea în viitor. Următoarea diagramă prezintă modelul de entitate pentru entitatea KnowledgeArticle.

Model de entitate KnowledgeArticle.

Când creați o înregistrare de articol din baza de cunoștințe, aceasta este creată în starea Draft. Folosind noua entitate KnowledgeArticle, puteți crea un articol specificând conținutul și formatarea acestuia în format HTML. Puteți specifica propria valoare pentru KnowledgeArticle.ArticlePublicNumber atribut în timpul creării unei înregistrări a articolului din baza de cunoștințe în mod programatic; în caz contrar, valoarea este generată automat pe baza formatului specificat în zona de setări Dynamics 365 Customer Service din clientul web. KnowledgeArticle.ArticlePublicNumber atributul stochează ID-ul expus clienților, partenerilor și altor utilizatori externi pentru a face referire la și a căuta articole din baza de cunoștințe și rămâne același în toate versiunile și traducerile articolului din baza de cunoștințe.

Următorul cod eșantion arată cum puteți crea o înregistrare a articolului din baza de cunoștințe.

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);  

Creați versiuni majore și minore ale unui articol din baza de cunoștințe

Când creați o înregistrare de articol din baza de cunoștințe, versiunea majoră este setată automat la 1 și versiunea minoră la 0. Folosiți mesajul CreateKnowledgeArticleVersion (Acțiunea CreateKnowledgeArticleVersion sau CreateKnowledgeArticleVersionRequest) pentru a crea o versiune majoră sau minoră a unui articol din baza de cunoștințe. În mesajul de solicitare, setați IsMajor la true pentru a crea o versiune majoră; setați-l la false pentru a crea o versiune minoră. Noua înregistrare de versiune este creată folosind:

  • KnowledgeArticle.RootArticleId atribut pentru menținerea asocierii cu înregistrarea rădăcină a articolului din baza de cunoștințe.

  • KnowledgeArticle.PreviousArticleContentId atribut pentru a indica versiunea anterioară a înregistrării.

Următorul cod eșantion arată cum puteți crea o versiune majoră a unei înregistrări a articolului din baza de cunoștințe folosind CreateKnowledgeArticleVersionRequest.

CreateKnowledgeArticleVersionRequest versionRequest = new CreateKnowledgeArticleVersionRequest  
{  
   Source = new EntityReference(KnowledgeArticle.EntityLogicalName, knowledgeArticleId),  
   IsMajor = true  
};  
CreateKnowledgeArticleVersionResponse versionResponse = (CreateKnowledgeArticleVersionResponse)_serviceProxy.Execute(versionRequest);  

Creați o traducere a articolului din baza de cunoștințe

Utilizați Acțiunea CreateKnowledgeArticleTranslation (Web API) sau CreateKnowledgeArticleTranslationRequest (serviciu de organizare) pentru a crea o traducere pentru o înregistrare a articolului din baza de cunoștințe. Puteți traduce articolul din baza de cunoștințe în mai mult de 150 de limbi, iar informațiile despre aceste limbi acceptate sunt disponibile în noua entitate LanguageLocale.

Mai multe informații: Entitate LanguageLocale.

Utilizarea Acțiunii CreateKnowledgeArticleTranslation (API Web) sau a CreateKnowledgeArticleTranslationRequest (serviciului de organizare) creează o nouă înregistrare a articolului din baza de cunoștințe cu titlul, conținutul, descrierea și cuvintele cheie copiate din înregistrarea sursă în noua înregistrare, iar limba noii înregistrări este setată la cea specificată în solicitare. De asemenea, trebuie să specificați dacă noua înregistrare va fi o versiune majoră sau minoră. Noua înregistrare folosește KnowledgeArticle.ParentArticleContentId atribut pentru menținerea asocierii cu înregistrarea primară a articolului din baza de cunoștințe.

După ce executați acest mesaj și obțineți un răspuns, regăsiți înregistrarea articolului din baza de cunoștințe din obiectul de răspuns, apoi actualizați titlul, conținutul, descrierea și cuvintele cheie pentru a adăuga conținutul tradus.

Următorul cod eșantion arată cum să creați o traducere a articolului din baza de cunoștințe folosind 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));  

Notă

Valoarea GUID a cheii primare (LanguageLocaleId) pentru fiecare înregistrare de limbă din entitatea LanguageLocale este aceeași în toate organizațiile Dynamics 365 Customer Service.

Ciclul de viață al articolului din baza de cunoștințe: schimbă starea unui articol din baza de cunoștințe

În timpul ciclului său de viață, un articol din baza de cunoștințe poate fi în următoarele stări:

  • 0: Schiță (după ce este creat un articol din baza de cunoștințe)

  • 1: Aprobat (după aprobarea unui articol din baza de cunoștințe)

  • 2: Programat (după ce un articol din baza de cunoștințe este programat să fie publicat)

  • 3: Publicat (după publicarea unui articol din baza de cunoștințe)

  • 4: Expirat (după expirarea unui articol din baza de cunoștințe, conform datei de expirare specificate la publicare)

  • 5: Arhivat (după arhivarea unui articol din baza de cunoștințe)

  • 6: Eliminat (după eliminarea unui articol din baza de cunoștințe)

Pentru a schimba starea articolului, utilizați mesajul Update din înregistrarea articolului din baza de cunoștințe pentru a actualiza atributul KnowledgeArticle.StateCode. Pentru tipurile asociate timpuriu, utilizați enumerarea KnowledgeArticleState pentru a stabili stările posibile. Mai multe informații: Efectuați operațiuni specializate folosind Actualizarea.

Următorul cod eșantion arată cum să publicați o înregistrare a articolului din baza de cunoștințe.

// 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);  
  

Asociați o înregistrare a articolului din baza de cunoștințe cu o instanță a entității Dynamics 365 Customer Service

Când activați căutarea de cunoștințe încorporate pentru o entitate din Dynamics 365 Customer Service folosind clientul web, o relație multe-către-multe, msdyn_<Entity_Name>_knowledgearticle, este creată automat. Puteți utiliza această relație pentru a asocia sau a conecta programatic o instanță KnowledgeArticle cu o instanță a entității Dynamics 365 Customer Service. Când asociați o instanță KnowledgeArticle cu o instanță de entitate, o înregistrare pentru relație este creată într-o entitate intersecție numită msdyn_<Entity_Name>_knowledgearticle. De exemplu, atunci când asociați o instanță KnowledgeArticle cu o instanță Account pentru prima dată, este creată o entitate intersecție numită msdyn_account_knowledgearticle, și o înregistrare cu maparea asocierii este creată în această entitate intersecție. În mod implicit, entitatea Incident (caz) este activată pentru căutarea de cunoștințe încorporate și când conectați o înregistrare KnowledgeArticle la o înregistrare Incident, este creată o înregistrare de asociere în entitatea intersecție KnowledgeArticleIncident.

Următorul cod eșantion arată modul de asociere a unei instanțe KnowledgeArticle cu o instanță 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);  
  

Creșterea numărului de vizualizări pentru articolul din baza de cunoștințe

Folosiți mesajul IncrementKnowledgeArticleViewCountRequest pentru a crește numărul de vizualizări al unei înregistrări de articol din baza de cunoștințe pentru o anumită zi în entitatea KnowledgeArticleViews. Dacă nu există o înregistrare pentru un articol din baza de cunoștințe pentru o zi specificată, se va crea o înregistrare și apoi se va seta valoarea de contorizare a vizualizării specificată în KnowledgeArticleViews.KnowledgeArticleView atribut. Dacă există deja o înregistrare pentru un articol din baza de cunoștințe pentru ziua specificată, va crește doar numărul de vizualizări în KnowledgeArticleViews.KnowledgeArticleView atributul înregistrării existente.

Articolele din baza de cunoștințe din Dynamics 365 Customer Service, inclusiv versiunile și traducerile acestora, sunt indexate cu text complet și acceptă căutarea cu text complet din SQL Server. Pentru mai multe informații despre căutarea cu text complet, consultați SQL Server: Căutare text complet.

Folosiți mesajul FullTextSearchKnowledgeArticleRequest pentru căutarea articolului din baza de cunoștințe din aplicațiile dvs. pentru a găsi informațiile pe care le căutați. Mesajul FullTextSearchKnowledgeArticleRequest vă permite să utilizați potrivirea tulpinii flexivă (permite înlocuirea unui timp sau inflexiune diferit pentru textul de căutare) și să specificați criteriile de interogare (folosind FetchXML sau QueryExpression pentru a specifica filtrarea, ordonarea, sortarea și paginarea) pentru a găsi articole de cunoștințe cu text specificat. Puteți alege, de asemenea, să eliminați mai multe versiuni ale acelorași articole din rezultatele căutării și să filtrați în funcție de starea articolului din baza de cunoștințe în timp ce căutați un text.

Entități din baza de cunoștințe perimate

Următoarele entități moștenite au fost perimate. Mai multe informații: Entități de cunoștințe depreciate

Entitățile de cunoaștere moștenite nu sunt accesibile începând cu 1 decembrie 2020. Vă recomandăm să recomandați să mutați în entitatea KnowledgeArticle. Pentru mai multe informații despre crearea unui articol de cunoștințe în Interfață unificată, consultați Crearea și gestionarea articolelor de cunoștințe.  

Utilizați următoarele pentru ajutor cu migrarea:

  • Utilizați SDK, WebAPI sau Microsoft Power Automate în funcție de scenariile dvs.
  • Utilizați instrumentul de migrare open source cu Licență MIT.

Important

  • Instrumentul de migrare open source nu este acceptat de Microsoft și poate fi necesar să fie modificat pentru a se potrivi cu scenariile dvs.
  • Rulați întotdeauna un mediu de testare înainte de utilizarea în producție.
  • Verificați licența și fișierul Citește înainte de a utiliza instrumentul.

Consultați și