Loading

Actualizar los artículos de la base de datos de conocimientos con Data Loader

Fecha de publicación: Feb 10, 2021
Descripción

Disponible en: Salesforce Classic Knowledge 


Pasos del proceso general para actualizar un artículo de Knowledge con Data Loader:


1. Exportar los artículos.

2. Manipular los datos de su artículo externamente en un editor de texto.

3. Realizar una actualización.
 

Tenga en cuenta las siguientes restricciones:

 
  • Solo es posible actualizar los borradores de artículos mediante Data Loader, y hay restricciones en cuanto a cómo exportar o consultar los artículos de Knowledge.
 
  • No es posible actualizar el valor de PublishStatus de un artículo en Data Loader, y es necesario modificar cada artículo que desee actualizar para crear un borrador de versión.
 
  • No hay forma estándar o compatible de actualizar de manera masiva artículos al estado de borrador. Deben definirse con el estado de borrador individualmente mediante la interfaz de usuario.
 
  • Si está usando Classic Knowledge, solo puede exportar y actualizar un tipo de artículo a la vez. Si tiene múltiples tipos de artículo, deberá realizar las operaciones por separado con cada uno de ellos.


En el caso de los tipos más exóticos, la guía para desarrolladores de Salesforce Knowledge (en inglés) indica que es posible actualizar de forma programática artículos de Knowledge, pero Salesforce no ofrece ninguna herramienta de cliente compatible que aproveche las API de Knowledge para una solución integral y lista para usar de actualizar los artículos de forma masiva. Puede aprovechar la clase de servicio de publicación de gestión de Apex para poder definir artículos como borrador, actualizarlos y volver a publicarlos, pero hacerlo requiere la creación de una herramienta cliente para gestionar este proceso, lo cual no es compatible. 

Para ayudar a un desarrollador a empezar a aprovechar la API de Knowledge, hay una publicación Updating Knowledge Articles programmatically (en inglés) en los foros de debate.

Hay una herramienta Knowledge Heroku con la capacidad de actualizar artículos. Hay más detalles disponibles en Knowledge Import/Export Tools, en el grupo Success Community, pero tenga en cuenta que esta herramienta no es oficialmente compatible con Salesforce.

Además, puede considerar explorar el posible uso de la aplicación Salesforce Knowledge Global Search and Replace (Release 2.0) para la versión Classic o de la aplicación Lightning Knowledge Search and Replace. Sin embargo, debe saber que, una vez más, estas herramientas no tienen compatibilidad oficial. Consulte ¿Proporciona Salesforce apoyo a las aplicaciones de terceros o paquetes instalados? si desea más información.

 
Solución

1. Realice una exportación:


a. Abra Data Loader, haga clic en Exportar e inicie sesión en su organización.

b. Seleccione Mostrar todos los objetos de Salesforce y seleccione el objeto ArticleType__kav adecuado. Cada tipo de artículo tiene un objeto propio disponible para su selección. Sustituya ArticleType por el nombre de tipo de objeto que desee para encontrar su objeto de KnowledgeArticleVersion correspondiente.

c. Haga clic en Examinar... y seleccione una ubicación y nombre de archivo para el archivo .csv resultante de la exportación. Haga clic en Siguiente >.

d. Seleccione sus campos para la exportación. Asegúrese de incluir el Id. y cualquiera de los campos personalizados o estándar que desee actualizar.

Nota: Hay restricciones de implementación de consultas cuando realice una exportación mediante Data Loader en el objeto KnowledgeArticleVersion (ArticleType__kav). Debe filtrar mediante la siguiente sintaxis: Id = [single ID], Id IN [list of ID's] o PublishStatus = [status]. Además, PublishStatus solo se permite en una condición AND de nivel superior. De lo contrario, verá el siguiente error:
 
'MALFORMED_QUERY: Restricción de implementación: Cuando consulte o busque el objeto Documentation__kav, deberá filtrar mediante la siguiente sintaxis: Id = [single ID], Id IN [list of ID's] or PublishStatus = [status]. Además, el estado PublishStatus solo se admite en una condición AND de nivel superior.'
 
Puede agregar las siguientes condiciones a su consulta para cumplir las restricciones: 

PublishStatus = 'Draft' AND Language = 'en_US'
 
Si su base de Knowledge admite varios idiomas, puede encontrar una lista de códigos de idioma disponibles para la condición Language en la documentación Idiomas admitidos

e. Cuando haya seleccionado los campos que desee y agregado las condiciones como se describe anteriormente, haga clic en Finalizar.
 

2. Manipule el archivo de exportación resultante usando la aplicación que elija:

 
Nota: Salesforce no es compatible con las funciones o la funcionalidad de Microsoft Excel, y realizar tareas de manipulación o gestión de datos va en contra de su política. A continuación se incluye el siguiente caso, que puede servir de ejemplo general o para guiar a los clientes para preparar sus datos. El servicio de asistencia de Salesforce no puede realizarlo en lugar de los clientes.

Si su artículo contiene campos con área de texto enriquecido (RTA), la columna del campo contendrá el código HTML del campo de texto enriquecido. Consulte la sección relativa a los atributos y etiquetas HTML compatibles del documento Editor de texto enriquecido para ver una lista de etiquetas HTML compatibles.

Como ejemplo, supongamos que necesita actualizar referencias permanentes a URL de imagen incrustadas en sus artículos de Knowledge, y que las HTML de campo RTA personalizado del archivo de exportación resultante de una imagen de ejemplo es:

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

Para ello, puede usar la función de buscar y reemplazar de Excel para buscar "https://c.<IdDeSuInstanciaAntigua>.content.force.com" y sustituirlo por su nueva instancia para actualizar las referencias a la instancia anterior en todas las incidencias de las URL en los campos de su artículo:

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

Este ejemplo sería especialmente útil si su organización se incluyera en una migración o división de instancia para asegurar que las imágenes de su artículo de Knowledge sigan siendo visibles.
 

3. Realice una actualización:

 
Advertencia: Haga siempre una copia de seguridad de sus datos antes de realizar cualquier operación con datos. Consulte Exportación de datos de copia de seguridad desde Salesforce o Exportar datos si desea más información. Se recomienda realizar una prueba con un pequeño subconjunto de registros para asegurar que la operación se realizó correctamente; para ello, abra manualmente los registros y compruebe que son correctos en Salesforce.

a. Abra Data Loader y haga clic en la ficha Actualizar.

b. Seleccione Mostrar todos los objetos de Salesforce y elija el objeto ArticleType__kav correcto, donde ArticleType es el nombre de tipo de artículo del artículo.
c. Haga clic en Examinar... y elija el archivo actualizado que preparó externamente en el paso 2. Haga clic en AbrirSiguiente>Aceptar.

d. Haga clic en Crear o modificar una asignación y seleccione Unir automáticamente campos con columnas o asigne manualmente el campo Id. con los campos que está actualizando. Haga clic en Aceptar. Compruebe que la asignación es correcta y haga clic en Siguiente >.

e. Haga clic en Examinar... y seleccione una ubicación para guardar los archivos de error y finalización correcta. Haga clic en Finalizar.

f. Revise la advertencia y, si está listo para continuar, haga clic en .
 

Consulte también:

Idea: Mass edit published articles (en inglés)
Número del artículo de conocimiento

000381649

 
Cargando
Salesforce Help | Article