Como exportar Combinaciones y Stock en Prestashop sin utilizar módulos

Como muchos, cada cierto tiempo necesitarás poner al día el stock de tu tienda online. Por eso he pensado que este post para exportar el stock de las combinaciones de productos en nuestra tienda online Prestashop te parecerá interesante. Es sencillo, rápido, efectivo y ¡GRATIS! No te hace falta comprar ningún módulo.

Exportar stock de combinaciones en Prestashop mediante SQL

Si has intentado exportar anteriormente el stock de los productos de tu tienda online posiblemente te hayas encontrado con un problema muy común: La exportación no nos indica las combinaciones de productos ni las cantidades de éstas.

Si cuando haces la exportación de tu catálogo te gustaría tener diferenciado el stock para cada combinación de producto (por ejemplo, para tallas o colores) este método te permitirá hacerlo sin tener que gastar el dinero en ningún módulo. Basta con una simple consulta sql para poder exportar las combinaciones y las cantidades de tu Prestashop en un csv.

Añadir una consulta SQL para exportar combinaciones en Prestashop

Lo primero que tenemos que hacer para exportar un csv de las combinaciones es ir al apartado de “Gestor SQL” en el backoffice de nuestra tienda online Prestashop.

Una vez dentro busca el botón para añadir una consulta SQL. Al hacerlo te llevará a una nueva pantalla donde debes introducir el nombre de la consulta y el texto que te dejo a continuación:

SELECT
    p.id_product,
    pa.reference,
    pa.upc,
    pa.price,
    pai.id_image,
    pl.name,
    GROUP_CONCAT(DISTINCT(pal.name) SEPARATOR ", ") as combination,
    pq.quantity
FROM ps_product p
LEFT JOIN ps_product_attribute pa ON (p.id_product = pa.id_product)
LEFT JOIN ps_stock_available pq ON (p.id_product = pq.id_product AND pa.id_product_attribute = pq.id_product_attribute)
LEFT JOIN ps_product_lang pl ON (p.id_product = pl.id_product)
LEFT JOIN ps_product_attribute_combination pac ON (pa.id_product_attribute = pac.id_product_attribute)
LEFT JOIN ps_attribute_lang pal ON (pac.id_attribute = pal.id_attribute)
LEFT JOIN ps_product_attribute_image pai on(pa.id_product_attribute = pai.id_product_attribute)
WHERE pl.id_lang = 3
AND pal.id_lang = 3
GROUP BY pac.id_product_attribute

Fíjate que el “id.lang” es el 3. Esto es porque es el ID del idioma español predeterminado. En caso de querer hacerlo para otros idiomas o que tengas el español con un ID diferente, sólo tienes que modificar este dato. La fuente original de la consulta la puedes ver en esta web (inglés).

Actualización

Como ya sabrás, Prestashop está actualizándose constantemente. Eso provoca que dependiendo de la versión que utilices puede que no te sirva la consulta SQL que se indica arriba.

Para la versión 1.7.6 la consulta que debes utilizar es la que te indico a continuación

SELECT 
	m.name AS 'Manufacturer', 
	p.id_product 'Product ID', 
	pl.name 'Product Name', 
        IFNULL(pa.reference, p.reference)  'Reference',
        IFNULL(pa.upc, p.upc)  'Position',
        IFNULL(pa.ean13, p.ean13)  'EAN13',
        IFNULL(s.quantity, p.quantity)  'Quantity'
FROM ps_product p
LEFT JOIN ps_product_lang pl ON (p.id_product = pl.id_product and pl.id_lang=1)
LEFT JOIN ps_manufacturer m ON (p.id_manufacturer = m.id_manufacturer)
LEFT JOIN ps_category_product cp ON (p.id_product = cp.id_product)
LEFT JOIN ps_category c ON (cp.id_category = c.id_category)
LEFT JOIN ps_category_lang cl ON (cp.id_category = cl.id_category and cl.id_lang=1)
LEFT JOIN ps_product_attribute pa ON (p.id_product = pa.id_product)
LEFT JOIN ps_stock_available s ON (p.id_product = s.id_product and pa.id_product_attribute=s.id_product_attribute)
LEFT JOIN ps_product_tag pt ON (p.id_product = pt.id_product)
LEFT JOIN ps_product_attribute_combination pac ON (pac.id_product_attribute = pa.id_product_attribute)
LEFT JOIN ps_attribute_lang al ON (al.id_attribute = pac.id_attribute and al.id_lang=1)
GROUP BY p.id_product,pac.id_product_attribute
order by p.id_product

¿Quieres saber cómo enviar avisos de carritos abandonados y recuperar pedidos sin módulos?

Exportar csv combinaciones Prestashop

Cuando hayas copiado el texto, simplemente dale a “Guardar”. Cuando vuelvas al apartado del gestor SQL verás que ya aparece la nueva consulta que acabas de crear. Ahora puedes hacer clic sobre el título para ver el resultado de la consulta en el mismo backoffice o hacer clic en el botón que dice “Exportar” y descargar el csv con los datos de cantidades para las combinaciones de productos.

Consulta SQL para exportar combinaciones de productos.

Si quieres ampliar más la información sobre esta consulta puedes visitar el foro de prestashop en este enlace

No te olvides

Puedes dejar un comentario para exponer tu opinión o para cualquier duda que tengas. Me gusta saber que hay gente al otro lado.

Si te ha parecido interesante te animo a que lo compartas. Seguro que conoces a alguien a quien le puede interesar 😉

¡Un saludo a tod@s!

Este artículo ha sido escrito por: Marcos Pastoriza

ebook gratuito Socialxpl.

Los 7 pasos [probados] para vender más en internet

Rellena tus datos y recibe el eBook al instante en tu correo electrónico (si no lo encuentras, busca en la capeta de Spam o Promociones).

+La finalidad de este formulario es poder enviarte más información, contenidos y recursos para ayudarte a construir un negocio en Internet. La base de legitimación es tu consentimiento, tu nombre y dirección de correo serán almacenados en Active Campaign (herramienta acogida al acuerdo de seguridad EU-US Privacy Shield) y el responsable de su tratamiento es Marcos Pastoriza. Consulta la la política de privacidad para conocer más información así como tus derechos de acceso, rectificación, cancelación y objeción.

+La finalidad de este formulario es poder enviarte más información, contenidos y recursos para ayudarte a construir un negocio en Internet. La base de legitimación es tu consentimiento, tu nombre y dirección de correo serán almacenados en Active Campaign (herramienta acogida al acuerdo de seguridad EU-US Privacy Shield) y el responsable de su tratamiento es Marcos Pastoriza. Consulta la política de privacidad para conocer más información así como tus derechos de acceso, rectificación, cancelación y objeción.

También te podría interesar...