View Categories

Importar Información desde archivos CSV

9 minutos de lectura

¿Qué son los archivos CSV?

CSV es la sigla en inglés de Comma Separated Values, en español, valores separados por coma, y es un formato universal de texto simple ampliamente utilizado para el intercambio de información con datos tabulares por diferentes herramientas de nivel mundial como las Suite de Microsoft, LibreOffice y Google entre otros, también por diversos ERP, eCommerce, etc.

Es un archivo liviano donde los datos, como en las planillas electrónicas, vienen en filas y columnas, con la diferencia que cada columna o dato no viene en una celda, sino que a continuación del anterior y usualmente separado de este por coma o punto y coma. Pueden ser creados, leídos e interpretados por todas estas herramientas, y especial significancia tiene en las planillas electrónicas donde al ser importados son correctamente asimilados en filas y columnas con los datos en las celdas.

¿Cómo crear un archivo CSV desde Microsoft Excel?

  1. Posicionarse en la hoja que desea exportar (ver estructura de fila que requiere el ERP).
  2. Seleccionar Archivo > Guardar como, y elegir el Tipo CSV (MS-DOS) que asigna punto y coma (;) como separador.
  3. Seleccionar la carpeta e indicar el nombre del archivo, y guardarlo.
Genial

Si el contenido de alguna columna incluye puntos y comas (;) el proceso encierra todo el contenido de esa columna entre comillas dobles, para que esos puntos y comas no sean considerados separadores; por ejemplo, si la columna es un listado de emails separados por punto y coma.

Además de eso, si el contenido incluye comilla(s) doble(s), el proceso antepone a cada una otra comilla doble.

Precaución

Si al seleccionar el tipo CSV (MS-DOS) Excel utiliza ‘,’ (coma) u otro carácter como separador en el archivo CSV resultante, debe cambiarlo en la configuración de Windows, ya que es exigencia que el separador sea ‘;’ (punto y coma).

Para ello vaya al Panel de control > Reloj y región > Cambiar formatos de fecha, hora o número > botón Configuración Adicional > pestaña Números > Separador de listas > establecerlo en ‘;’ (punto y coma) > Aceptar, para guardar el cambio.

Reglas del ERP para el uso de archivos CSV

  • Puede contener 1 o más filas superiores de títulos, solo como referencia para el usuario. El ERP permite declarar cuantas y las ignora.
  • El mínimo de columnas obligatorias debe incluirse, aunque algunas de estas estén vacías.
  • La posición definida para cada columna debe respetarse; todas las columnas vacías a la derecha pueden no incluirse.
  • Al comienzo y al final de los títulos de columnas, los datos o el archivo, no requiere ninguna indicación especial.
  • La moneda no es requerida, asume que utiliza la que se indique en los parámetros de importación.
  • La transformación a la moneda usada en cada registro destino la hace automáticamente el ERP. 
  • Los montos no deben usar signo de moneda como parte de su contenido o formato.
  • El separador de datos debe ser punto y coma (;) y este no es requerido al final de cada línea.
  • Los decimales deben ser separados por coma (,) y el ERP cambia a punto por compatibilidad con la base de datos.
  • Si los números tienen separador de miles (por contenido o por formato), el ERP los quita, y después aplica el formato de su configuración.
  • La longitud máxima de fila resultante no debe superar lo indicado por parámetros, el resto es ignorado.
  • La cantidad máxima de filas o registros no debe superar lo indicado por parámetro.
Genial

Estas reglas o estándares del ERP respecto al uso de archivos CSV se alcanzan y cumplen en el uso común de la gran mayoría de software del mercado y, por ejemplo, desde Microsoft Excel no requiere ningún trabajo o consideraciones especiales para lograrlo, de hecho, basta la forma más simple de uso de planillas electrónicas.

Si un dato o columna contiene comillas dobles, el ERP las trata como inicio y fin de un contenido donde el carácter separador en su interior es tratado como parte de él, no como separador; además las comillas dobles son quitadas del contenido. Esto permite que los contenidos sean correctamente interpretados a partir de las reglas del método de exportación Tipo CSV (MS_DOS) que se utiliza.

Nota

Cuando se trata de exportar información mediante archivos CSV, Microsoft Excel u otros, desde el ERP hacia diversos softwares (contables, de RRHH y más), las reglas de formato y de datos las imponen sus respectivos fabricantes, y en tales casos corresponde al ERP adecuarse, lo que hace, por ejemplo, en la integración o exportación de ventas para contabilidad de Softland. 

Recurso del ERP para la Importación de archivos CSV

Cada proceso que permite o requiere importar información desde un archivo CSV, cuenta con acceso al diálogo estándar que permite buscar el archivo CSV origen y prepararlo para ser utilizado. Este recurso se describe a continuación, para el ejemplo usamos el de importación de precios y condiciones de costo.

Genial

Los datos de este diálogo se pueden predefinir o personalizar en cada módulo o proceso que lo utiliza, permitiendo que se adapten de mejor forma a las necesidades reales. Independiente de ello, el usuario los puede cambiar en tiempo real y ese cambio permanece hasta cerrar el módulo o proceso.

Datos de Origen

Archivo

El archivo CSV a importar, debe cumplir las reglas del ERP y tener la estructura adecuada, según se explica en esta documentación.

Moneda

El usuario debe indicar la que usa el archivo origen, permitiendo al ERP hacer la interpretación correspondiente para que la información destino sea expresada en la moneda correcta.

Tipos de valores

Están habilitadas las opciones Netos, Con IVA y Totales; y cada recurso que llama a esta herramienta le indica que opción está predefinida. Actualmente las Listas de Precios y los Detalles de Documentos asumen que usan valores Netos y así deben estar en el archivo origen; por su parte, las Cartolas Bancarias asumen valores Totales, que es como suelen expresarlo las instituciones correspondientes.

Cantidad de filas de título

Debe indicar cuantas filas superiores del archivo o planilla en realidad no son registros a procesar, esa cantidad de líneas serán ignoradas por el proceso. Lo usual es que sea una sola, pero podría usarse un archivo que tenga más, o que no tenga ninguna, con este parámetro eso se resuelve.

Datos de Destino

Cada uno de estos datos tiene un uso adecuado al proceso que llama al diálogo; si dicho proceso lo utiliza, es descrito en forma particular en su documentación.

Datos de Validación

Longitud máxima de filas

Mantenga el número que ofrece el ERP, suele estar correcto por configuración; si lo reduce demasiado el sistema avisará al validar, si lo aumenta innecesariamente solo aumenta la carga del proceso.

Cantidad máxima de filas

Puede indicar el número real o uno superior; este dato pretende evitar que se intente procesar un archivo que tenga una cantidad de registros que no corresponda; si las filas reales son más de lo que indica, al validar el archivo el sistema avisa y el usuario puede corregir el parámetro.

Nota

En la práctica no existe un límite para la cantidad de filas o registros que contenga el archivo origen, pueden ser decenas o cientos de miles; siempre que no excedan lo que específicamente indique cada proceso por su propia lógica, la herramienta está diseñada para gestionarlos correctamente, sin generar conflictos de memoria y en el menor tiempo posible.

Botones

Validar Archivo

Este botón, obligatorio antes de aceptar el archivo, verifica que este exista, que el proceso pueda importarlo, que tenga al menos las columnas mínimas exigidas, que contenga registros, que estos tengan la cantidad de columnas correctas, que las columnas obligatorias tengan contenido, que los registros de datos no excedan el máximo indicado en los parámetros. Como referencia realiza esta verificación en un tiempo de 10 a 20 segundos por cada 100.000 registros. Como se ve en la imagen, si todo está bien, en la parte inferior izquierda actualiza un mensaje de Ok con la cantidad de registros que contiene. Si detecta errores que impiden procesar el archivo, el usuario cuenta con los mensajes correspondientes y/o con acceso a un informe que puede consultar para las correcciones necesarias antes de proceder.

Aceptar

Retorna al diálogo que lo llamó para continuar su trabajo, con el archivo a importar ya preparado.

Cancelar

Retorna sin validar ni aceptar un archivo origen para importar, es decir, esto no aplicará.

¿Cómo importa el ERP un archivo CSV?

  • Permite buscar el archivo origen por su carpeta o ruta y nombre y seleccionarlo, utilizando los recursos del sistema operativo.
  • Valida el archivo y su cantidad máxima de registros.
  • Valida que todas las filas de datos tengan la cantidad correcta de columnas, descartando errores o saltos de línea en los contenidos.
  • Verifica que las columnas definidas como obligatorias en el proceso si tengan algún contenido.
  • Si encuentra errores que deben resolverse antes de procesar el archivo, avisa detallándolos y no procede.
  • Realiza la tarea de actualización de información en su base de datos según cada proceso o herramienta.
  • Al finalizar el proceso, deja disponible un informe detallando cualquier problema de datos encontrado o acción no concretada.
  • Aplica las reglas propias de cada proceso o herramienta que utiliza estos recursos CSV.

Actualizar Precio y Condiciones de Costo de Productos

Para ver como actualizar los precios y condiciones de costo desde un archivo CSV, consulte la documentación de Modificación Masiva de Productos y Servicios.

Importar Movimientos Bancarios a las Cartolas del ERP

Para ver como importar los movimientos bancarios desde archivo CSV que se prepare a partir de las cartolas digitales que las instituciones financieras disponen, consulte la documentación dentro del capítulo de Cartola Bancaria.

Importar Detalles de Documentos

Mientras agrega o modifica documentos en el ERP, en las herramientas de la mayoría de ellos existe la opción ‘Importar detalles desde archivo CSV’. Esta despliega el diálogo estándar de gestión de este tipo de archivos, que opera como se describe anteriormente. En este caso se usa para importar detalles al documento actual.

Esta herramienta es útil, por ejemplo, para cargar en un documento de compra los detalles o productos importados por la empresa, desde un Excel que prepara con los costos finales incluyendo los diferentes gastos relacionados (transporte, aduana, almacenaje, etc.), si lo hace de esa forma; o para aprovechar los registros digitales que el proveedor proporciona cuando los detalles del documento de compra son muchos o muy complejos. Estas labores se pueden hacer digitando, el recurso de importar se proporciona para agilizar la tarea.

Precaución

Este proceso funciona para documentos en los cuales todos los detalles tienen solo Entrada o solo Salida; no opera en documentos cuyos detalles pudieran tener o entrada o salida o ambas; y excluye los registros con unidades cero o negativas.

Datos de Destino

Acción sobre descuentos

La opción Aplicarlos, importa el monto unitario con el descuento ya aplicado y por tanto el % descuento en cero. La opción Traspasarlos, importa el descuento como tal al detalle, y por tanto es el documento el que lo aplica. En ambos casos si efectivamente existe la columna de descuentos en el archivo origen y esta si tiene información.

Bodega stock

Si no trae una especificada en el archivo origen, al detalle se asigna la bodega definida en este parámetro; si acá tampoco trae, asume la que la configuración del tipo de movimiento señale. El ERP además interpreta si es de Entrada o de Salida.

PCF – Sub Cuenta

Si los detalles no indican en su archivo origen a que sub cuenta del plan de cuentas financiero deben asignarse, se asignan a esta, si se especifica; sino, se asignan a la que indique el registro maestro de producto; sino a lo que indique el tipo de movimiento.

PCF – Asignación

Si los detalles no indican en su archivo origen a que asignación del plan de cuentas financiero corresponden, se asignan a esta, si se especifica; si acá tampoco hay contenido, se asignan a lo que indique el tipo de movimiento.

PCC – Sub Cuenta

Si los detalles no indican en su archivo origen a que sub cuenta del plan de cuentas contable corresponden, se asignan a esta, si se especifica; si acá tampoco hay contenido, se asignan a lo que indique el registro maestro del producto.

Datos de Validación

Cantidad máxima de filas

En este caso asume la cantidad de líneas de detalles de productos que el tipo de documento tiene establecidas en su registro maestro, respetando así su estructura.

Columnas del archivo CSV

  1. Código Interno o SKU. Si se trata de un archivo propio de la empresa posiblemente utilice esta clave de producto o servicio.
  2. Código de producto de Fabricante. Si se basa en un archivo del proveedor con su propio código o ID, que el ERP registra y puede usar como clave.
  3. Descripción o nombre del producto. Solo como una referencia en caso que el usuario requiera alguna verificación visual.
  4. Unidades. Los decimales serán redondeados según el formato que el documento indica para las unidades.
  5. Monto unitario. Neto (sin IVA y sin impuestos adicionales, que serán calculados y agregados en el documento si corresponde)
  6. Porcentaje de descuento. Si aplica
  7. Bodega. Opera como se explica en Datos de Destino.
  8. PCF, Sub Cuenta. Opera según se describe en Datos de Destino.
  9. PCF, Asignación. Opera como se indica en Datos de Destino.
  10. PCC, Sub Cuenta. Opera como se indica en Datos de Destino.

Ejemplo

Nota

Los porcentajes de descuento, si se incluyen, se expresan como números sencillos (sin formato de %). Ejemplos: 12.5% es simplemente 12.5

Reglas

  • Debe cumplir las reglas del ERP para el uso de archivos CSV, ya explicadas.
  • Las columnas 1 o 2, y las columnas 4 y 5 son obligatorias (*)

(*) En el caso de las columnas 1 y 2 de cada fila, basta que una de estas columnas tenga contenido. El proceso buscará el producto según la clave que encuentre primero. Por estar definidas como columnas obligatorias, si ninguna tiene contenido, el proceso de validación lo informará.

Acción

  • Elimina los registros actualmente existentes en los detalles del documento y ajusta los totales de este a cero.
  • Verifica, aplica o informa, todas las validaciones estándar del tipo de documento y movimiento, garantizando la consistencia de la información.
  • Carga los detalles en el mismo orden que los encuentra en el archivo origen; estos asumen la fecha de inventario del documento y la hora actual.
  • Si aplica, para el registro y uso del PCR, PCPP, márgenes base, impuestos y otros, extrae la información desde el maestro del producto o servicio.
  • Para definir el saldo y estado de las unidades, gestión de inventario y otros, se basa en los atributos del documento actual y del maestro del producto.
  • Actualiza los totales del documento y aplica los cálculos y operaciones que correspondan según la configuración.
  • Deja disponible el reporte de hallazgos y de acciones para que el usuario tome las medidas necesarias si fuera el caso.
Nota

Permite incluir productos de Apoyo y de Tipo de Cambio. En ambos casos, para cumplir la verificación general, deben tener unidades y monto unitario, que podría ser 1 y que no serán importados.

Esta herramienta no opera con producto del tipo Kit/Paquete cuyos componentes se tratan como productos independientes. Tampoco considera la información de trazabilidad de productos.

Posteriormente, los datos importados pueden ser editados del modo usual si lo permiten los atributos del documento y movimiento.

El Reporte de Hallazgos y de acciones

Ejemplo del reporte que la herramienta abre y deja disponible al final de la importación. Se presenta a modo de ejemplo de lo que verifica el proceso. Cuando el mensaje indica ‘(se incluye)’ el detalle es cargado en el documento a pesar del hallazgo.

Naturalmente si el archivo fuente está bien preparado, no habrá hallazgos y el proceso será fluido.

CODE

22-10-2022 09:17:35  > *** VERIFICACION ***
Archivo C:\temp\ejemplo importar detalles documentos.csv
2 filas de títulos
212 registros de datos
5 columnas (4 obligatorias)
22-10-2022 09:17:35  > *** PROCESO ***
Registro n° 2 > código A-B-C > Prod Prueba 1 > % descuento fuera de rango
Registro n° 3 > código B-A-D > Prod Prueba 2 > no encontrado en maestro de productos y servicios
Registro n° 5 > código B-A-U > Prod Prueba 3 > Producto tipo Kit/paquete con componentes independientes, no permitido
Registro n° 8 > código A-X-U > Prod Prueba 4 > es Inactivo, y su uso no está permitido
Registro n° 8 > código A-X-U > Prod Prueba 4 > es Inactivo (se agregó porque está autorizado)
Registro n° 12 > código B-A-Z > Prod Prueba 5 > Unidades fuera de rango
Registro n° 19 > código B-D-Z > Prod Prueba 16 > Unidades equivalen a presentación parcial
Registro n° 23 > código B-Q-A > Prod Prueba 6 > Unidades ingresadas no es múltiplo de unidades predefinidas
Registro n° 26 > código B-H-Z > Prod Prueba 9 > Monto unitario fuera de rango
Registro n° 29 > código G-G-1 > Prod Prueba 45 > Producto no acepta precio venta sin valor
Registro n° 36 > código G-G-2 > Prod Prueba 46 > Es afecto, pero documento no aplica IVA y lo excluye
Registro n° 37 > código G-G-4 > Prod Prueba 18 > Vendedor no tiene producto autorizado (por crayón)
Registro n° 52 > código G-G-3 > Prod Prueba 21 > Producto excluido para esta razón social
Registro n° 57 > código G-G-7 > Prod Prueba 22 > Producto no incluido para razón social
Registro n° 58 > código G-G-5 > Prod Prueba 17 > Producto ya existe en línea 9 (se incluye)
Registro n° 67 > código G-G-9 > Prod Prueba 13 > Configuración no permite combinar Productos Kit/Paquete con otros tipos en mismo doc
Registro n° 70 > código G-F-1 > Prod Prueba FF1 > No encuentra reg en tabla Cambio Sujeto IVA (se incluye)
Registro n° 77 > código G-T-7 > Prod Prueba T27 > Conflicto en definición de impuesto (se incluye)
Registro n° 78 > código A-D-2 > Prod Prueba A > Precio total final Producto [n] fuera rango permitido [n a n] (se incluye)

En cada caso informado, identificado por el número de fila del archivo origen o fuente para facilitar su análisis, si corresponde, el usuario debe tomar las medidas necesarias.

Nota

Este informe se genera durante la ejecución del proceso, es propio de este y se presenta al terminarlo. Es poco probable que reciba mensajes de hallazgos durante el proceso, pero si así fuera, tenga presente resolverlos después.

La operación previa obligada de validar archivo es la que verifica que este exista, que el proceso pueda importarlo, que tenga al menos las columnas mínimas exigidas, que contenga registros, que estos tengan la cantidad de columnas correctas, que las columnas obligatorias tengan contenido, que los registros de datos no excedan el máximo indicado en los parámetros; y si detecta errores que impiden procesar el archivo, el usuario cuenta con los mensajes correspondientes y/o con acceso a un informe similar que puede consultar para las correcciones necesarias antes de proceder.