Jump to content

Me cambia los id's de las categorias


Recommended Posts

Estoy intentando pasar los datos de la gestión de mi empresa a Prestashop y al principio lo iba a hacer directamente a la base de datos MySQL, pero como hay muchas tablas y diferentes idiomas la verdad es que se complica mucho y me pasé a importarlo directamente por el CSV.

 

El problema es que al importar las categorías, aunque me lo hace bien, pues no me mantiene los ID's si no que me pone otros siempre nunca los que yo le digo en el CSV. Es más, cada vez que las vuelvo a importar para ver si lo hace pues sigue sumando id's (claro borra los antiguos y el nuevo que crea es el último antiguo+1).

 

Total, que si hay forma de que al importar por CSV me ponga el ID del CSV y no el que el quiera. Porque luego los artículos van con el ID de la categoría en cuestión y sino está definida va ser dificil que los relacione.

 

Gracias!

Link to comment
Share on other sites

Por id entendemos eso, ID pero no lo estarás poniendo como referencia.

 

Para que te borre los id anteriores tienes que ir al phpmyadmin y vaciar la table de productos o la de categorias.

Si no lo haces asi, prestashop aunque borres el producto o la categoria mediante el administrador , por desgracia sigue usando ese id y lo pasa al ultimo que tenga escrito.

Otra cosa que puedes usar es este modulo que te resetea lo que quieras en las tablas.

 

Pruebalo. AQUí

Link to comment
Share on other sites

Gracias por responder.

 

¿Que quieres decir con que lo estaré poniendo como referencia¿?

Cuando importo el CSV le digo que mi columna ID es la columna ID del prestashop y que borre todas las categorías.

 

Si, se hacer un truncate con mysql pero aun así me empieza a numerar las categorias desde el 1 pero mis categorias empiezan por el 12, 13, 14... y algunas faltan por el medio porque se borraron categorias, añadieron otras... y los id's siguen subiendo.

 

Es decir que yo tengo estas categorias por poner un ejemplo:

ID -> categoria

13 categoria1

14 categoria2

15 categoria3

18 categoria4

20 categoria5

 

Si borro todos los datos de las tablas con un truncate y los vuelvo a meter prestashop me las convierte a esto:

1 categoria1

2 categoria2

3 categoria3

4 categoria4

5 categoria5

 

No me conserva mis id's, algo primordial

Link to comment
Share on other sites

Gracias por responder.

 

¿Que quieres decir con que lo estaré poniendo como referencia¿?

Cuando importo el CSV le digo que mi columna ID es la columna ID del prestashop y que borre todas las categorías.

 

Si, se hacer un truncate con mysql pero aun así me empieza a numerar las categorias desde el 1 pero mis categorias empiezan por el 12, 13, 14... y algunas faltan por el medio porque se borraron categorias, añadieron otras... y los id's siguen subiendo.

 

Es decir que yo tengo estas categorias por poner un ejemplo:

ID -> categoria

13 categoria1

14 categoria2

15 categoria3

18 categoria4

20 categoria5

 

Si borro todos los datos de las tablas con un truncate y los vuelvo a meter prestashop me las convierte a esto:

1 categoria1

2 categoria2

3 categoria3

4 categoria4

5 categoria5

 

No me conserva mis id's, algo primordial

 

Sube el csv, que estas intentando subir en tu tienda al foro, y dime paso a paso como lo estas haciendo.

  • Like 1
Link to comment
Share on other sites

Gracias a los 2.

 

Ahora directamente me da error al darle a importar. Voy a borrar la tienda y volver a configurarla de 0 otra vez a ver que pasa, y voy a decirle que no me ponga productos de ejemplo mejor. A ver que pasa. Pero la teoría es que SI puedo hacer lo que quiero no?

 

¿Para hacer lo que quiero es realmente necesario y/o obligatorio desactivar el Autoincremento?

 

Y ya que estamos. Os parece mejor así importar los datos por CSV o directamente a MySQL. Es que va ser algo que tenga que hacer diariamente pero claro, como vamos a tener la web en 5 idiomas no se mentalmente como hacer para insertar los datos en todos los idiomas activos de la página. Las categorías sólo se hará una vez si cambio algo la meteré a mano y ya, pero los artículos, si los meto en un idioma sólo dará problemas con los otros? o al no tener texto mostrará directamente el texto castellano (lo que quiero, los idiomas serán para el menú y categorias los artículos tendrán nombre universal).

 

Es que como sólo categorias ya tiene unas cuantas tablas asusta un poco.

 

También tengo la duda de que si un cliente hace pedidos y luego por alguna actualización vía CSV algun articulo de ese pedido ya no lo tengo si podrá seguir viendo su factura o al no encontrar la relación va dar error.

Edited by carlosgoce (see edit history)
Link to comment
Share on other sites

¿Para hacer lo que quiero es realmente necesario y/o obligatorio desactivar el Autoincremento?

 

 

Si quitas el autoincremento, los id no incrementaran automaticamente, lo podrias probar...... (Pero es peligroso)

 

De todos modos, si tu colocas el "id" en el csv de importación, deberia tragarselo.

Link to comment
Share on other sites

La verdad es que nunca voy a meter artículos desde la propia tienda sino que desde fuera así que si tras "formatear" mi prestashop sigue sin ir probaré así.

 

Bueno lo acabo de probar en una base de datos nueva y en principio no debería haber ningún problema. Cree una base de datos con id autoincremental, hice un insert especificando el ID y me lo hizo correctamente con el ID elegido. Luego añadí uno sin ID y también lo hizo bien. Añadiendo +1 al último id que yo había puesto y obviando todos los anteriores aunque estaban vacíos.

 

Bueno voy a probar con una nueva instalación de Prestashop en un rato cuento la experiencia y subo el CSV si algo falla.

Edited by carlosgoce (see edit history)
Link to comment
Share on other sites

La verdad es que nunca voy a meter artículos desde la propia tienda sino que desde fuera así que si tras "formatear" mi prestashop sigue sin ir probaré así.

 

Bueno lo acabo de probar en una base de datos nueva y en principio no debería haber ningún problema. Cree una base de datos con id autoincremental, hice un insert especificando el ID y me lo hizo correctamente con el ID elegido. Luego añadí uno sin ID y también lo hizo bien. Añadiendo +1 al último id que yo había puesto y obviando todos los anteriores aunque estaban vacíos.

 

Bueno voy a probar con una nueva instalación de Prestashop en un rato cuento la experiencia y subo el CSV si algo falla.

 

Ok, estaremos pendientes y expectantes de saber como te ha ido.

  • Like 1
Link to comment
Share on other sites

Jaja, lo de estaremos expectantes ma matao.

 

Me pregunto si tendrá que ver que la base de datos sea innodb o myisam ahora no caigo cual es la que puse antes, pero se que es la que 'no acepta transacciones' sólo que no caigo cual es, creo que myisam. Ahora la creé con myisam también. Otro dato extra es que le quité el prefijo de las tablas ps_ porque no me gusta pero no va ser eso supongo...

 

Cuaderno de bitácora:

· Abro el menú de importación

Elijo categorías, idioma español, no elijo ISO porque los datos están en utf8

Elijo eliminar las categorias aunque no hay y cargo mi csv. Le doy a próximo paso.

 

· Siguiente pantalla

Pongo un 1 porque me quiero saltar la primera línea pues es donde están los títulos y me aseguro que correspondan los campos, pero ya corresponden todos porque el fichero lo genero desde PHP ya en el orden adecuado.

 

· Hago un alto en el camino y me pregunto para qué sirve la categoria raiz, ya que si quiero meter una categoria en otra uso categoria madre.

 

Las columnas que añado son estas porque estoy probando y no tengo más:

id Active (0/1) name Parent Category

Root Category (0/1)

 

Pues bien, cruzo los dedos, le doy a siguiente y...no hay errores, que ya se interesante. Si hay 10 advertencias todos así:

El link reescrito para (ID: 12) se reescribió como merchandising

 

La verdad no se que significa y antes no le había prestado atención. Creo que me puso los títulos en minúscula porque creo recordar que con PHP le ponía la primera en mayúscula, así que veo que no sirve de nada hacerlo. Lo compruebo y así es. Así que las advertencias no son el problema. También me pregunto por qué guarda todos los CSV como te confundas y cargues uno anterior la lías.

 

Voy a ver las categorías y.... NADA... lo mismo aunque empiezan a contar desde el 3, con lo que intuyo que antes había 2 categorías a pesar que le dije que no agregara ninguno de prueba.

 

Alguna idea?

Link to comment
Share on other sites

  • 1 month later...

Para que respete el ID de las categorías, basta con marcar la opción "Force all ids during import?", por lo menos en la versión 1.5.2

 

Para borrar TODOS (y no sólo los que coincidan con los que se importarán) los productos, hay que marcar la opción "Eliminar todo productos ¿antes de importar?"

 

Lo del link supongo que se refiere a las url-amigables

Link to comment
Share on other sites

Guest
This topic is now closed to further replies.
×
×
  • Create New...