Julien.G Posted August 26, 2019 Share Posted August 26, 2019 Bonjour, J'ai actuellement 2 requêtes : - une qui me permet d'exporter les ventes par déclinaison avec le mois et l'année et que ej souhaite compléter avec les EAN. - et une autre qui me permet d'extraire les stocks par déclinaisons avec les EAN principaux et par déclinaisons qui peut aider à modifier la première. J'aimerais ajouter les EAN principaux et par déclinaisons dans la première requête pour l'export des ventes. la requête pour l'export des ventes : SELECT year(date_add) annee , month(date_add) mois ,product_name,SUM(od.`product_quantity`) AS total FROM `ps_order_detail` od LEFT JOIN `ps_orders` o ON (o.`id_order` = od.`id_order` ) WHERE o.valid = 1 GROUP BY product_name, year(date_add) , month(date_add) La requêtes pour l'export des stocks avec les EAN principaux et par déclinaisons : SELECT sa.id_product as 'ID Produits', cl.`name` AS `Categorie`, pa2.reference as 'Reference', p.reference as 'Reference Principale', pl.name as 'Noms Produits', GROUP_CONCAT(al.name) as 'Declinaison', p.ean13 'EAN 13', pa2.ean13 'EAN 13 2' , sa.quantity as 'Stocks' FROM ps_product_lang pl LEFT JOIN ps_stock_available sa ON(pl.id_product = sa.id_product AND pl.id_lang=1) LEFT JOIN ps_product_attribute_combination pac ON(pac.id_product_attribute = sa.id_product_attribute) LEFT JOIN ps_attribute_lang al ON(al.id_attribute = pac.id_attribute AND al.id_lang=1) LEFT JOIN ps_product p ON(p.id_product = pl.id_product) LEFT JOIN ps_category_lang cl ON(cl.`id_category` = p.`id_category_default`AND cl.`id_lang` = 1 AND cl.`id_shop`=1) LEFT JOIN ps_product_attribute pa2 ON (pa2.id_product = pl.id_product AND pac.id_product_attribute = pa2.id_product_attribute AND sa.id_product_attribute = pa2.id_product_attribute) WHERE pl.id_shop IN (1) GROUP BY sa.id_product,sa.id_product_attribute ORDER BY sa.id_product ASC Je précise que je ne connais pas plus que ça ce langage. Je me doute qu'il faut ajouter ceci sur la première ligne : , p.ean13 'EAN 13', pa2.ean13 'EAN 13 2' mais je ne sais pas quoi d'autre après. Merci par avance pour votre aide. Julien Link to comment Share on other sites More sharing options...
Baba deCode Posted August 26, 2019 Share Posted August 26, 2019 Salut, SELECT year(date_add) annee , month(date_add) mois ,product_name,SUM(od.`product_quantity`) AS total, pa.`ean13` FROM `ps_order_detail` od LEFT JOIN `ps_orders` o ON (o.`id_order` = od.`id_order` ) LEFT JOIN `ps_product_attribute` pa ON (od.`product_attribute_id` = pa.`id_product_attribute` ) WHERE o.valid = 1 GROUP BY product_name, year(date_add) , month(date_add) cdt Link to comment Share on other sites More sharing options...
Julien.G Posted August 27, 2019 Author Share Posted August 27, 2019 Bonjour, Merci beaucoup d'avoir pris le temps. J'ai testé, mais j'ai ce retour : "Cette requête SQL n'a pas de résultat." Aussi, je vois que vous avez mis uniquement ", pa.`ean13`", mais dans l'autre requête, ", pa2.ean13 'EAN 13 2'" me donne l'EAN des déclinaisons, et c'est ce qui m'intéresse le plus car j'ai beaucoup plus de produits avec déclinaisons que sans. Pour précision je suis sous prestashop 1.6.1.24 Si vous avez besoin de plus de précision n'hésitez pas à me demander. Merci encore, Julien Link to comment Share on other sites More sharing options...
Baba deCode Posted August 27, 2019 Share Posted August 27, 2019 SELECT year(date_add) annee , month(date_add) mois ,product_name,SUM(od.`product_quantity`) AS total, pa.`ean13` FROM `ps_order_detail` od LEFT JOIN `ps_orders` o ON (o.`id_order` = od.`id_order` ) LEFT JOIN `ps_product_attribute` pa ON (od.`product_attribute_id` = pa.`id_product_attribute` ) WHERE o.valid = 1 GROUP BY od.product_name, year(o.date_add) , month(o.date_add); Link to comment Share on other sites More sharing options...
Baba deCode Posted August 27, 2019 Share Posted August 27, 2019 j ai un resultat donc la requete marche (faut typer les champs de GROUP BY) Link to comment Share on other sites More sharing options...
Julien.G Posted August 27, 2019 Author Share Posted August 27, 2019 Ça fonctionne, merci beaucoup ! Link to comment Share on other sites More sharing options...
Recommended Posts
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 accountSign in
Already have an account? Sign in here.
Sign In Now