OuiLudo Posted January 17, 2020 Share Posted January 17, 2020 (edited) Quote SELECT p.id_product 'Product ID', pl.name 'Product Name', GROUP_CONCAT(DISTINCT(al.name) SEPARATOR ", ") AS 'Combination', p.ean13 'EAN 13', p.upc 'UPC' 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_category_product cp ON (p.id_product = cp.id_product) 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 Bonjour, Je viens de finir la création d'une boutique en ligne avec beaucoup de produits dont chacun contient pas mal de déclinaisons. Pour finaliser la boutique et effectuer une dernière vérification avant sa mise en ligne, je souhaiterais fournir à mon client un listing de toutes les déclinaisons de produits, et, pour chacune des déclinaisons, sa référence et son prix. J'ai donc trouvé cette requête SQL sur un ancien topic. À mon sens, c'est une bonne base de départ, malheureusement, cette dernière n'intègre, ni les références, ni les prix de ces déclinaisons. J'ai fouillé dans la base mySQL pour trouver les infos dont j'ai besoin, j'ai identifié les infos dont j'ai besoin. Les prix et références semblent se situer dans la table : `ps_product_attribute` respectivement dans les colonnes price et reference Je ne maîtrise pas bien les requêtes SQL et ne suis pas en mesure d'ajouter ces requêtes dans la requête SQL que j'ai déjà trouvé. Quelqu'un pourrait-il m'aider à la compléter ? Merci par avance. J'essaie d'apprendre le SQL petit à petit mais je ne maîtrise pas encore assez pour pouvoir me débrouiller. Edited January 17, 2020 by OuiLudo (see edit history) Link to comment Share on other sites More sharing options...
coeos.pro Posted January 17, 2020 Share Posted January 17, 2020 la référence ce n'est pas vraiment un problème pour la récupérée, par contre pour le prix, c'est bien le prix de vente, mais il doit être HT ou TTC ? Link to comment Share on other sites More sharing options...
OuiLudo Posted January 17, 2020 Author Share Posted January 17, 2020 Bonjour, C'est bien le prix de vente hors taxe dont j'ai besoin, effectivement, je ne l'ai pas précisé, je n'ai pas besoin d'obtenir le prix majoré de sa règle de TVA. Merci pour votre attention. Link to comment Share on other sites More sharing options...
coeos.pro Posted January 17, 2020 Share Posted January 17, 2020 essaye ceci : SELECT p.id_product 'Product ID', pac.id_product_attribute 'id_product_attribute', pl.name 'Product Name', pa.reference as 'reference declinaison', p.reference as 'reference produit', GROUP_CONCAT(DISTINCT(al.name) SEPARATOR ", ") AS 'Combination', p.price 'prix', p.ean13 'EAN 13', p.upc 'UPC' 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_category_product cp ON (p.id_product = cp.id_product) 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 je ne sais pas si tu connais le module gratuit : mais il permet de tester des requetes SQL facilement et même d'avoir les résultats en CSV (fichier exploitable sous excel) 1 Link to comment Share on other sites More sharing options...
OuiLudo Posted January 17, 2020 Author Share Posted January 17, 2020 Merci beaucoup pour votre aide, j'ai juste rajouter la requête SELECT les termes suivants pour avoir le prix de la déclinaison : pa.price as 'Prix de la déclinaison', C'est parfait, c'est exactement ce que je voulais faire. Je viens de regarder votre module, il est effectivement très intéressant. Est-il compatible avec la version 1.7 de prestashop ? Merci encore. Bonne journée à vous. Link to comment Share on other sites More sharing options...
coeos.pro Posted January 17, 2020 Share Posted January 17, 2020 il y a 28 minutes, OuiLudo a dit : Est-il compatible avec la version 1.7 de prestashop ? la version 1.1.3 est compatible 1.6 & 1.7 Link to comment Share on other sites More sharing options...
OuiLudo Posted January 17, 2020 Author Share Posted January 17, 2020 Bon, je suis à nouveau bloqué, après deux heures à étudier les syntaxes de requêtes SQL, je ne trouve pas la solution. Je m'adresse donc à vous. Si vous aviez une piste, je suis preneur. La requête telle qu'elle est faite maintenant, avec votre aide, est parfaite. Cependant, j'ai créé un attribut nommé "Colisage", qui possède une cinquantaine de valeurs différentes. Je souhaiterais ajouter une colonne "Colisage" à mon tableau exporté en CSV dans laquelle la valeur de cet attribut serait indiquée pour chacune de mes déclinaisons. TOUTES mes déclinaisons possèdent une valeur pour cet attribut. J'ai donc identifié l'ID du groupe d'attribut "Colisage" qui m'intéresse : • Dans la table : `ps_attribute_group`, dans la colonne id_attribute_group : 35 Après de multiples essais je peine à trouver la syntaxe correcte pour obtenir cette colonne supplémentaire. Auriez-vous une piste à me fournir ? Merci par avance. Link to comment Share on other sites More sharing options...
Toma-Tic Posted March 17, 2023 Share Posted March 17, 2023 Bonjour, Merci pour vos posts, ça m'a bien aidé. Par contre je n'arrive a sortir mes prix en TTC avec cette requête. J'ai cru comprendre que ça fonctionné avec l'appel des id_tax_rules mais je n'arrive pas à l'implémenter dans la requête. Vous seriez m'aider par hasard ? Très bonne journée ! 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