Loading

Aggiornamento degli articoli della Knowledge Base con Data Loader

Data pubblicazione: Feb 10, 2021
Descrizione

Disponibile in: Salesforce Classic Knowledge 


Procedura generale per l'aggiornamento di un articolo Knowledge con Data Loader:


1. Esportare gli articoli

2. Manipolare i dati dell'articolo esternamente in un editor di testo

3. Eseguire un aggiornamento
 

Tenere conto delle seguenti restrizioni:

 
  • È possibile aggiornare articoli in bozza solo con Data Loader ed esistono restrizioni sulla modalità di esportazione o di query degli articoli Knowledge.
 
  • Non è possibile aggiornare il valore PublishStatus di un articolo tramite Data Loader ed è necessario modificare ciascun articolo che si desidera aggiornare per creare una versione in bozza.
 
  • Non esiste un metodo standard o supportato per l'impostazione globale dello stato degli articoli su bozza. È necessario impostare come bozza un articolo alla volta tramite l'interfaccia utente.
 
  • Se si utilizza Classic Knowledge, è possibile esportare e aggiornare solo un tipo di articolo alla volta. In caso di più tipi di articolo, per ognuno sono necessarie operazioni separate.


Per chi ha spirito d'avventura, la Salesforce Knowledge Developer's Guide indica che è possibile aggiornare articoli Knowledge in modo programmatico, ma Salesforce non mette a disposizione uno strumento client supportato che utilizzi le API Knowledge per una soluzione end-to-end pronta all'uso per l'aggiornamento globale di articoli. È possibile sfruttare la classe Apex Knowledge Management Publishing Service per impostare articoli come bozza, aggiornarli e quindi pubblicarli di nuovo. Questo processo, tuttavia, richiederebbe la creazione di uno strumento client che ne consenta la gestione complessiva, e questo non è supportato. 

Per rendere più semplice per gli sviluppatori iniziare a utilizzare l'API Knowledge, nei forum di discussione è stato pubblicato il post informativo Updating Knowledge Articles programmatically (Aggiornamento di articoli Knowledge in modo programmatico).

Esiste uno strumento Knowledge Heroku che consente di aggiornare articoli. Maggiori dettagli sono disponibili nel gruppo Knowledge Import/Export Tools (Strumenti di importazione/esportazione di articoli Knowledge) della Trailblazer Community. Tenere conto, tuttavia, che questo strumento non è supportato ufficialmente da Salesforce.

Inoltre, si può considerare di approfondire la possibilità di utilizzare l'app Salesforce Knowledge Global Search and Replace (Release 2.0) per Classic o l'app Lightning Knowledge Search and Replace. Anche questi strumenti, tuttavia, non sono supportati. Per maggiori dettagli, vedere Support for third party apps, installed packages, or programs (Supporto per app, pacchetti installati e programmi di terze parti).

 
Risoluzione

1. Eseguire un'esportazione:


a. Aprire Data Loader, fare clic su Export (Esporta) e accedere all'organizzazione.

b. Selezionare Show all Salesforce objects (Mostra tutti gli oggetti Salesforce) e selezionare l'oggetto TipoArticolo__kav appropriato. Per ciascun tipo di articolo è disponibile un oggetto specifico per la selezione. Sostituire TipoArticolo con il nome del tipo di articolo desiderato per individuarne l'oggetto KnowledgeArticleVersion corrispondente.

c. Fare clic su Browse... (Sfoglia) e scegliere il percorso e il nome per il file .csv risultante dall'esportazione. Fare clic su Next > (Avanti)

d. Selezionare i campi da esportare. Assicurarsi di includere il campo ID e gli altri campi standard o personalizzati che si desidera aggiornare.

Nota: quando si esegue un'esportazione tramite Data Loader a fronte dell'oggetto KnowledgeArticleVersion (TipoArticolo__kav), sono attive restrizioni nell'implementazione delle query. È necessario applicare un filtro utilizzando la seguente sintassi: Id = [singolo ID], Id IN [elenco di ID] o PublishStatus = [stato]. Inoltre, PublishStatus è consentito solo in una condizione AND di livello massimo. In caso contrario, verrà generato il seguente errore:
 
'MALFORMED_QUERY: Implementation restriction: When querying or searching the Documentation__kav object, you must filter using the following syntax: Id = [single ID], Id IN [list of ID's] or PublishStatus = [status]. In addition PublishStatus is only permitted in a top-level AND condition.' (ovvero 'QUERY_IN_FORMATO_ERRATO: restrizione all'implementazione: Quando si esegue una query o una ricerca nell'oggetto Documentation__kav, è necessario applicare un filtro utilizzando la seguente sintassi: Id = [singolo ID], Id IN [elenco di ID] o PublishStatus = [stato]. Inoltre, PublishStatus è consentito solo in una condizione AND di livello massimo).
 
Per rispettare le restrizioni, è possibile aggiungere le seguenti condizioni alla query: 

PublishStatus = 'Draft' AND Language = 'en_US'
 
Se la Knowledge Base supporta più lingue, è possibile trovare l'elenco dei codici lingua disponibili per la condizione Language nella documentazione Lingue supportate

e. Dopo aver completato la selezione dei campi e aver aggiunto le condizioni sopra descritte, fare clic su Fine.
 

2. Manipolare esternamente il file di esportazione risultante utilizzando l'applicazione desiderata:

 
Nota: Salesforce non offre supporto per le funzioni o le funzionalità di Microsoft Excel ed è vietato dalla policy eseguire operazioni di gestione o manipolazione dei dati. Quanto segue ha lo scopo di offrire ai clienti un esempio generale o una guida per preparare i propri dati. L'Assistenza non è autorizzata a eseguire queste operazioni per conto dei clienti.

Se gli articoli contengono campi area di testo RTF, le colonne per questi campi contengono il codice HTML per i campi RTF. Vedere la sezione su tag e attributi HTML supportati della documentazione Editor di test RTF per l'elenco dei tag HTML compatibili.

A titolo di esempio, si supponga di dover aggiornare riferimenti codificati a URL di immagini incorporate all'interno di articoli Knowledge e che il codice HTML del campo area di testo RTF personalizzato del file di esportazione risultante per un'immagine di esempio sia il seguente:

<img alt="Launch" src="https://c.<IstanzaPrecedente>.content.force.com/servlet/servlet.ImageServer?id=015a0000003AlU7&amp;oid=00Da0000001aQGp"></img>

Per eseguire l'aggiornamento è possibile utilizzare la funzione di ricerca e sostituzione di Excel per cercare "https://c.<IstanzaPrecedente>.content.force.com" e sostituire questa stringa con la nuova istanza per aggiornare i riferimenti all'istanza precedente in tutte le occorrenze di URL all'interno degli articoli:

<img alt="Launch" src="https://c.<NuovaIstanza>.content.force.com/servlet/servlet.ImageServer?id=015a0000003AlU7&amp;oid=00Da0000001aQGp"></img>

Questo esempio risulta particolarmente utile se l'organizzazione è stata interessata dalla ripartizione o dalla migrazione dell'istanza e si desidera garantire la visibilità delle immagini degli articoli Knowledge.
 

3. Eseguire l'aggiornamento:

 
Attenzione: eseguire sempre il backup dei dati prima di eseguire qualsiasi operazione su di essi. Per maggiori dettagli, vedere Esportazione di dati di backup da Salesforce o Esportazione dati. È consigliabile eseguire una prova con un sottoinsieme ridotto di record e assicurarsi che l'operazione sia riuscita aprendo manualmente i record corrispondenti in Salesforce e verificando che siano corretti.

a. Aprire Data Loader e fare clic su Update (Aggiorna).

b. Selezionare Show all Salesforce objects (Mostra tutti gli oggetti Salesforce) e selezionare l'oggetto TipoArticolo__kav, dove TipoArticolo è il nome del tipo dell'articolo.
c. Fare clic su Browse... (Sfoglia) e scegliere il file aggiornato preparato esternamente durante la fase 2. Fare clic su Open (Apri), Next > (Avanti), Ok.

d. Fare clic su Create or Edit a Map (Crea o modifica una mappa) e selezionare Auto-Match Fields to Columns (Associa automaticamente campi a colonne) oppure mappare manualmente il campo ID e i campi da aggiornare. Fare clic su OK. Verificare che la mappatura sia corretta e fare clic su Next > (Avanti)

e. Fare clic su Browse... (Sfoglia) e scegliere il percorso in cui salvare i file di riuscita e di errore. Fare clic su Finish (Fine).

f. Esaminare l'avviso e se tutto è pronto per procedere, fare clic su Yes (Sì).
 

Vedere anche:

Idea: Mass edit published articles (Modifica globale di articoli pubblicati)
Numero articolo Knowledge

000381649

 
Caricamento
Salesforce Help | Article