Julien.G Posted March 8, 2019 Share Posted March 8, 2019 Type d’install (nouvelle/MàJ) : MàJVersion de PS : 1.6.1.11URL du site concerné : https://www.croquementbon.fr/Thème (défaut/perso) : perso, leo pethouseHébergement : OVH Bonjour, Je souhaiterais savoir si de base je peux exporter un fichier dans lequel il y aurait le nom du produit et la quantité vendu sur la période choisi ou si il faut un module ? Dans le cas où il faudrait un module, je suis preneur de suggestion. Merci, Julien Link to comment Share on other sites More sharing options...
Eolia Posted March 8, 2019 Share Posted March 8, 2019 Il suffit de rentrer votre requete sql dans le gestionnaire sql du BO et vous pourrez exporter le résultat dans un fichier csv. Link to comment Share on other sites More sharing options...
Julien.G Posted March 8, 2019 Author Share Posted March 8, 2019 Bonjour et merci pour la rapidité de réponse. Je ne m'y connaît pas trop, je vois bien le gestionnaire SQL, pouvez-vous me préciser un peu s'il-vous-plaît ? Merci Link to comment Share on other sites More sharing options...
Eolia Posted March 8, 2019 Share Posted March 8, 2019 Eh bien vous allez dans ce gestionnaire et vous collez ceci: select od.product_id, od.product_attribute_id, pl.name as Nom, pagl.name as Déclinaison, pal.name as Valeur, sum(od.product_quantity) AS Quantités, COUNT(*) AS Ventes from ps_order_detail od inner join ps_orders o on (o.id_order = od.id_order and o.invoice_date between '2019-01-01 00:00:00' and '2019-12-31 23:59:59') inner join ps_product_lang pl on(pl.id_product = od.product_id) left join ps_product_attribute_combination pac on(pac.id_product_attribute = od.product_attribute_id) left join ps_attribute pa on (pa.id_attribute = pac.id_attribute) left join ps_attribute_group_lang pagl on(pagl.id_attribute_group = pa.id_attribute_group and pagl.id_lang = 1) left join ps_attribute_lang pal on (pal.id_attribute = pac.id_attribute and pal.id_lang = 1) GROUP BY od.product_id, od.product_attribute_id ORDER BY Ventes DESC En adaptant l'id_lang à celui de votre boutique, et vous aurez la synthèse des produits vendus depuis le début de l'année. Ensuite il vous suffit de modifier l'année à chaque nouvelle année^^ Link to comment Share on other sites More sharing options...
Julien.G Posted March 8, 2019 Author Share Posted March 8, 2019 Merci beaucoup, J'ai juste un petit soucis dans le fichier exporté, comme par exemple pour le 1er qui à l'ID 1295, il devrait y avoir taille et poids, mais il n'apparaît que le poids, je ne peux donc pas savoir quel sac à été vendu entre small et medium. Pour le 2ème de la liste, qui à le même id produit, c'est l'inverse, il y a la taille mais pas le poids. Je vous joint le fichier généré et la prise écran des déclinaisons de ce produit. En tout cas vous m'avez déjà grandement aidé request_sql_5.csv Link to comment Share on other sites More sharing options...
Eolia Posted March 8, 2019 Share Posted March 8, 2019 je vous ai fourni une requête exemple, je vous laisse l'adapter à vos besoins. Link to comment Share on other sites More sharing options...
Julien.G Posted March 8, 2019 Author Share Posted March 8, 2019 Très bien merci, je ne peux pas modifier car je ne connaît pas ce langage. Je vous remercie beaucoup pour votre aide, et je vais attendre si quelqu'un peut m'aider à modifier. Merci Link to comment Share on other sites More sharing options...
Julien.G Posted March 8, 2019 Author Share Posted March 8, 2019 J'ai "bidouillé" en voyant des morceaux de code par ci par là, et j'ai réussi à afficher les déclinaison complètes. Par contre j'ai aussi modifié pour que les quantités vendu affiché, prennent en compte les retours. En fait je ne comprend pas très bien à quoi correspondent les colonnes ventes et quantité dans le code que vous m'avez donné car ça ne correspond pas aux ventes effectuées ni aux stocks. Pour exemple, le fichier joint devrait correspondre aux ventes entre le 1 et le 7 mars, mais ce n'est pas le cas. Pour le dernier de la liste, ID 1134, il y en a 1 en stock et 4 ont été vendu dans cette période. Pour le premier, ID 1295, 2 ont été vendu et il y en a 18 en stock. ventes 1 au 7 mars.csv Link to comment Share on other sites More sharing options...
Julien.G Posted March 8, 2019 Author Share Posted March 8, 2019 J'ai oublié de joindre le code après modification, le voilà : select od.product_id as ID_produit, pl.name as Nom, GROUP_CONCAT(DISTINCT(pagl.name) SEPARATOR ", ") AS 'Déclinaison', GROUP_CONCAT(DISTINCT(pal.name) SEPARATOR ", ") AS 'Valeur', (sum(od.product_quantity) - sum(od.product_quantity_return)) AS Quantités, COUNT(*) AS Ventes from ps_order_detail od inner join ps_orders o on (o.id_order = od.id_order and o.invoice_date between '2019-03-01 00:00:00' and '2019-03-07 23:59:59') inner join ps_product_lang pl on(pl.id_product = od.product_id) left join ps_product_attribute_combination pac on(pac.id_product_attribute = od.product_attribute_id) left join ps_attribute pa on (pa.id_attribute = pac.id_attribute) left join ps_attribute_group_lang pagl on(pagl.id_attribute_group = pa.id_attribute_group and pagl.id_lang = 1) left join ps_attribute_lang pal on (pal.id_attribute = pac.id_attribute and pal.id_lang = 1) GROUP BY od.product_id, od.product_attribute_id ORDER BY Ventes DESC Link to comment Share on other sites More sharing options...
crajkaro Posted December 6, 2020 Share Posted December 6, 2020 On 3/8/2019 at 2:05 PM, Eolia said: Eh bien vous allez dans ce gestionnaire et vous collez ceci: select od.product_id, od.product_attribute_id, pl.name as Nom, pagl.name as Déclinaison, pal.name as Valeur, sum(od.product_quantity) AS Quantités, COUNT(*) AS Ventes from ps_order_detail od inner join ps_orders o on (o.id_order = od.id_order and o.invoice_date between '2019-01-01 00:00:00' and '2019-12-31 23:59:59') inner join ps_product_lang pl on(pl.id_product = od.product_id) left join ps_product_attribute_combination pac on(pac.id_product_attribute = od.product_attribute_id) left join ps_attribute pa on (pa.id_attribute = pac.id_attribute) left join ps_attribute_group_lang pagl on(pagl.id_attribute_group = pa.id_attribute_group and pagl.id_lang = 1) left join ps_attribute_lang pal on (pal.id_attribute = pac.id_attribute and pal.id_lang = 1) GROUP BY od.product_id, od.product_attribute_id ORDER BY Ventes DESC En adaptant l'id_lang à celui de votre boutique, et vous aurez la synthèse des produits vendus depuis le début de l'année. Ensuite il vous suffit de modifier l'année à chaque nouvelle année^^ Expand Bonjour Eolia, Est il possible de faire la même requête et d'ajouter une colonne du nombre de produit restant en stock dans la déclinaison ? merci à vous 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