Jump to content

Categorías y grupos de clientes en la importación


Recommended Posts

Hola,

Como muchos pequeños comerciantes, yo utilizo el importador que viene por defecto en prestashop 1.7.6.

Por ello, me gustaría saber si hay alguna manera de hacer que prestashop asigne las categorías importadas a todos los grupos de clientes de mi base de datos. Es decir, modificar algo en los archivos del importador de prestashop para asigne las categorías importadas a todos los grupos de clientes.

La razón de esta pregunta es que cuando tengo que realizar alguna importación masiva de los productos y sus categorías, éstas, por defecto, son asignadas a los 3 grupos de clientes que prestashop tiene por defecto (visitante, invitado y cliente) pero no al resto de grupos de clientes que tengo en mi tienda y que asignan tarifas personalizadas para uno o varios clientes determinados.

Por lo tanto cada vez que hago una importación masiva tengo que entrar en la base de datos, exportar la tabla "_category_group" y copiar y pegar los datos tantas veces como grupos tengo, modificando el id del grupo.

Muchas gracias

Link to comment
Share on other sites

Muy buenas.

Puedes solucionar el problema con una simple sentencia sql, siempre que al importar las categorías sea el sistema el que asigne el identificador a la nueva categoría, y localices a partir de que identificador se añaden :

INSERT INTO ps_category_group(id_category, id_group) (Select id_category, id_group from ps_category, ps_group where ps_category.id_category >2 and ps_group.id_group>3)

Donde id_group>3, los tres primeros son (visitante, invitado y cliente).

Donde id_category>xx, siendo xx el identificador de la última categoría antes de importar.

En el caso de que al importar elimines todos los datos de la base de datos, es decir, los productos anteriores y las categorías, empezando desde cero, puedes usar la sentencia directamente.

Como es lógico tienes que hacer copias de seguridad y no lo pruebes en producción, asegúrate de que funciona antes.

Una solución más compleja sería crear un módulo para que ejecute la sentencia sql al finalizar importación.

Link to comment
Share on other sites

  • 1 year later...
En 12/2/2020 a las 10:41 AM, mikel EPALZA dijo:

Hola,

Como muchos pequeños comerciantes, yo utilizo el importador que viene por defecto en prestashop 1.7.6.

Por ello, me gustaría saber si hay alguna manera de hacer que prestashop asigne las categorías importadas a todos los grupos de clientes de mi base de datos. Es decir, modificar algo en los archivos del importador de prestashop para asigne las categorías importadas a todos los grupos de clientes.

La razón de esta pregunta es que cuando tengo que realizar alguna importación masiva de los productos y sus categorías, éstas, por defecto, son asignadas a los 3 grupos de clientes que prestashop tiene por defecto (visitante, invitado y cliente) pero no al resto de grupos de clientes que tengo en mi tienda y que asignan tarifas personalizadas para uno o varios clientes determinados.

Por lo tanto cada vez que hago una importación masiva tengo que entrar en la base de datos, exportar la tabla "_category_group" y copiar y pegar los datos tantas veces como grupos tengo, modificando el id del grupo.

Muchas gracias

Buenas, puedes resolverlo si son los grupos para todas las categorías de la siguiente forma:

Hacer un INSERT que abarque cada uno de los id_category y asignarle los que faltan de id_group de la tabla ps_category_group

Un ejemplo: Para insertar el GRUPO 3 a las categorías 6 7 y 9 (me salto la 8 porque ya la tenia) podría usar lo siguiente

INSERT INTO `ps_category_group` (`id_category`, `id_group`) 
VALUES ('6', '3'), ('7', '3'), ('9', '3')

En tu caso sería a partir del grupo 3 ... el relleno de los INSERT y su sintaxis (comillas, guiones) lo puedes hacer en columnas de Excel y te genera los id_category automáticamente arrastrando la secuencia

9

10

11

...

etc.

tuve un problema algo similar, y me guie de esta respuesta para encontrar la tabla que almacena los GRUPOS de cada CATEGORIA.

Espero sirva a alguien,

Saludos! 😁

Link to comment
Share on other sites

En 12/2/2020 a las 3:14 PM, Juanjomg dijo:

 

Hola Juanjomg,

No se si aún seguirás por ahi. Queria pedirte disculpas por no haberte contestado. No se como se me puso pasar, pero al recibir hoy una nueva respuesta he visto que en su momento use la tuya pero supongo que debido al trabajo de mi comercio se me olvidaría contestarte. en cualquier caso tu respuesta me sirvió y aun hoy la utilizo.

Aprovecho tambien para agradecer al hackeId1 por su respuesta también, que es igual de buena y efectiva. Estoy seguro de que habreis ayudado a muchas personas a solventar este problema.

Muchisimas gracias a los dos. Saludos

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...