Data Loader es una herramienta creada en Java, con su código disponible en gitHub, lo que nos permite descargar su código, y montar sus artefactos mediante maven.
Todos conocemos la interfaz gráfica, pero como se explica en la documentación del mismo Repositorio de gitHub, también ofrece una clase (com.salesforce.dataloader.process.ProcessRunner) para la invocación por línea de comandos (CLI – Command Line Interface) en cualquier sistema operativo que disponga de una máquina virtual Java instalada.
Esto permite, por ejemplo, planificar (mediante CRON) cargas/descargas desde servidores empresariales Linux/Unix, y haciendo uso de Bulk API (hay otros muchos casos de uso ).
Utilizar Data Loader via CLI es muy senzillo y se describe en la documentación de Salesforce. Resumiendo son 3 pasos:
- Generar nuestro password encritpado en 2 pasos
- Crear el mapeo de los campos entre el fichero que cargaremos y el objeto destino
- Crear el fichero process-conf.xml q contiene el detalle del proceso a ejecutar (Operación, uso de BULK API, etc.)
Pero si además, estos 3 pasos nos parecen complejos/tediosos existe una herramienta llamada CLIq, que nos automatiza esta generació. Esta herramienta también está disponible en gitHub.
En la imagen adjunto, se observa la ejecución que realizo en el Linux más raro que he tenido nunca, Bash de Ubuntu en Windows, gracias al Windows Linux Subsystem, lo que demuestra que mientras haya disponible una máquina virtual de Java instalada, podemos ejecutar Data Loader y conseguir una nueva herramienta en nuestro arsenal de Integración.

Documentación para profundizar:
- Data Loader Guide: https://resources.docs.salesforce.com/204/latest/en-us/sfdc/pdf/salesforce_data_loader.pdf
- Uso de Data Loader a través de la linea de comandos: https://developer.salesforce.com/docs/atlas.en-us.dataLoader.meta/dataLoader/command_line_intro.htm
- Repo de Data Loader (Mavenizado): https://github.com/forcedotcom/dataloader
- Repo de CLIq (facilita la generación de los ficheros para la invocación en CLI): https://github.com/theswamis/dataloadercliq
- Si la integración la realizamos via WSC, podemos utilizar el método de mapping explicado aquí: https://developer.salesforce.com/docs/atlas.en-us.api_asynch.meta/api_asynch/asynch_api_mapping.htm
[…] en esta entrada me centraré en la carga mediante Data Loader por CLI, recomiendo el artículo de ingesta por APEX de Agustina García (Salesforce Big […]
Me gustaMe gusta