Foro de ayuda y soporte técnico de Sysme Software

Versión completa: Error al importar .csv
Actualmente estas viendo una versión simplificada de nuestro contenido. Ver la versión completa con el formato correcto.
Páginas: 1 2
Hola, he creado un fichero csv en el que he consignado los datos del formulario para importarlos más fácilmente.

Se me queda siempre parado en el registro 15 y me da el siguiente error:

Formulario: frmimportarpcsv<br>
Error: List index out of bounds (11)

La forma en que lo he realizado es exportando un fichero desde sysme para tenerlo de ejemplo, y desde ese mismo formulario he ido agregando los registros. Finalmente he rellenado (incluso con fórmulas) los campos para una vez terminado copiar y pegar como Solo Valores (por lo que a la hora de importación no hay problema de fórmulas).

Veo los datos del registro 15 homogéneos respecto a los demás, no sé el error dónde puede estar.

Otras cuestión que me gustaría saber es si el campo Alias se puede meter en excel también.

Una última cuestión, es necesario vincular campos aunque el nombre de los campos sea el mismo en el KEY y en el VALUE?

Gracias por la ayuda y un saludo
Hola ddrmama,

Te explico el proceso de importación, a ver si es que te estás dejando algún detalle:

1 - En el primer paso, se selecciona el fichero y las opciones del mismo (seleccionar el carácter separador de campos, si los valores están entrecomillados y si la primera fila contiene los títulos)
2 - Tras abrir el fichero, hay que seleccionar que campo será la clave y decidir si, en caso de no encontrar vinculación con el campo clave, el producto debe ser dado de alta o no.
3 - Y por último, en la lista de campos/valores, a la izquierda aparecerán los campos obtenidos del fichero, sobre los cuales, a su derecha, hay que asignar a cada uno con su desplegable el campo de la base de datos de Sysme que deben actualizar/insertar.

Con esto, pues no se en que punto te salta el error de "out of bounds".

El campo Alias, de momento, aunque esté en el fichero, no se puede actualizar. Solo los campos disponibles en el desplegable (values).

Si, es necesario vincular los campos aunque el nombre sea el mismo.

Bueno, poco a poco trataré de mejorar este nuevo módulo.

Un saludo.
Hola Óscar, a simple vista el proceso que he seguido es el que describes en tu proceso, no sé porqué me da el error siempre en el registro 15. De hecho pensando que fuera error de formato de los números o algo así, eliminé 10 registros (del 13 al 23) e intenté hacer la importación de nuevo y aún así, me da el error.

Los textos los tengo con formato general, los números en formato numérico con 4 decimales, salvo el tipo impositivo que lo tengo sin decimamles.

Los valores entre comillas, supongo que será por si están en formato texto no? No es mi caso, voy a ver si exploro estas opciones. Si sólo asigno un Id principal, el Id adicioanl ¿se me genera automáticamente?

Gracias
Espera espera, que acabo de encontrar otra posibilidad con un error similar con el fichero de otro usuario ... Resulta que si tras la última línea del fichero, hay lineas en blanco (retorno de carro), el programa suelta un error "List index out of bounds", con el otro usuario simplemente hemos eliminado esas lineas y se ha importado.

Adjuntame el fichero para que le de un vistazo.
Ok, no tengo ahora mismo el fichero a mano, pero luego cuando lo tenga lo intento y si veo que me sigue fallando, bien porque no sea la solución a mi problema, bien porque no haya entendido bien lo que me has querido decir, te lo mando y me lo miras.

Supongo a que te refieres a que si el csv tiene 20 registros, darle a eliminar del 21 en adelante no vaya a tener campos en blanco no?

De otro lado, con la configuración que te he comentado de texto en formato general y los número en formato numérico, con o sin decimales, ¿es necesario seleccionar el cuadro de VALOR entre comillas? Yo no lo tengo, entiendo que no, pero confírmamelo por favor.

Y para terminar, una vez importado correctamente, si vuelvo a importar el fichero con los mismos Id (campo clave) y otros valores, supongo que actualizará dichos valores no?.

Quizás sea cierto que el módulo de importación csv tengas que depurarlo como bien comentas, pero lo importante es tenerlo para usarlo, y ya se irá mejorando con la experiencia. A mí es lo que me ha decantado para usar tu software, ya que trabajar en excel y poder importarlo es un auténtico gustazo.

Un saludo y gracias
El problema es que Excel hace un poco lo que le da la gana cuando edita y guarda ficheros CSV, yo, cada vez que he tratado un fichero CSV con Excel, este me la acaba liando guardando el fichero con un formato no standard al que debería según: http://es.wikipedia.org/wiki/CSV

Por tanto, lo que suelo hacer es, si el fichero es corto, editarlo con el programa Notepad ++, pero si es largo (y es un dolor editarlo con un Notepad), utilizo un editor específico de ficheros CSV para que me respeten el standard.

Si, me refiero a que si el fichero tiene 20 líneas, asegurarte que no hay más lineas.

En cuanto a las comillas, a ver, los ficheros CSV no entienden de formato general/numerico, mira el resultado del fichero con el bloc de notas y si ves que los valores de texto no están con comillas no será necesario seleccionar la opción.

Si, si vuelves a importar el fichero, los productos se actualizarán claro.

En cuanto al módulo, pues si, mira que me peleé con muchos usuarios del foro para no hacerlo porque sabía que trabajar con ficheros externos me iba a causar problemas (pregúntale a @Francisco jaja), pero al final me decidí y claro, hay tantas posibles causas de error que ... en fin, habrá que ir contemplándolas todas.

Un saludo.
Gracias por contestar, ya te informo del éxito o no del proceso.

SAludos
Hola Óscar, esto función de maravilla. Muchas gracias.

Te digo lo que me ha pasado por si mi experiencia te puede ayudar a resolver el problema de otros compañeros.

Abrí el fichero en WordPad y ví que había varías filas vacías con el signo de ;. Entonces lo abrí en excel, lo edité y le eliminé las filas. Aún así, me dió el error. Lo abrí en el WordPad y es que se había quedado además un carácter retorno incluído en el fichero (tal y como tú comentaste). Lo eliminé desde el propio WordPad y a correr, funcionó perfectamente.

Para mí que lo mejor es una vez terminado el fichero editarlo en el propio WordPad para eliminar lo que sobra, sino puede pasar lo que me ha pasado a mí que me he vuelto por unos minutos locos.

Por cierto, una vez importada la lista con éxito el contador de productos se queda en el número que estaba antes de añadirlo. Simplemente saliendo y entrando te lo actualiza (no se actualiza dándole a refrescar). Te lo digo por si te lo quieres anotar para futuras mejoras, pero vamos, que no tiene tanta importancia porque se soluciona fácilmente.

Un saludo

PD. Por cierto, qué tamaño es el ideal para incluir imágnes en el programa para que no pesen demasiado?

Gracias
Buenas ddrmama,

Creo que tendré que depurar un tanto mas el proceso para que sea el programa quien detecte las líneas, retornos de carro y demás posibilidades por si solo, porque de otra forma será un follón para todo el mundo que trabaje con Excel.

Tomo nota del contador de productos, se me pasó.

En cuanto a las imágenes, si no vas a utilizar el módulo de Opencart para cargar productos a una tienda online, el tamaño ideal sería de 100x100 pixels con un peso de alrededor de 10/20 kb. Ahora bien, si vas a utilizar el módulo Opencart pues es recomendable subir un poco el listón a por ejemplo 500x500 px y 50/100 kb, todo lo que pase de ahí será irrelevante puesto que el programa redimensionará (reducirá) tamaños superiores porque los consideramos excesivos incluso para tiendas online.

Salu2.
Gracias de nuevo por la respuesta.

Un saludo
Páginas: 1 2