laurentdevilleplee Posted November 11, 2020 Share Posted November 11, 2020 Bonjour, J'ai trouvé ce fil de discussion qui est presque parfait pour moi. Mais il me manque l'export des code de réduction sur les commandes, car j'utilise ces code de réduction pour des partenaires et j'ai besoin de leur faire un retour sur les commandes passées avec. C'est un point primordial. Sauriez vous enrichir la requete SQL avec l'info du code de réduction ? Voici la requête qui fonctionne parfaitement sur la dernière version de mon Prestashop la 1.7.6.8 : SELECT o.date_add, d.id_order, CONCAT_WS(' ', g.firstname, g.lastname) AS customer, os.name AS state, d.product_name, d.product_ean13, d.product_quantity, c.name AS carrier_name, CONCAT_WS(' ', a.lastname, a.firstname, a.address1, a.address2, a.postcode, a.city) AS address_delivery, REPLACE(IFNULL(GROUP_CONCAT(cd.value), ''), '"', '\'') AS customized_data FROM ps_order_detail d LEFT JOIN ps_orders o ON (d.id_order = o.id_order) LEFT JOIN ps_customer g ON (o.id_customer = g.id_customer) LEFT JOIN ps_carrier c ON (o.id_carrier = c.id_carrier) LEFT JOIN ps_order_state_lang os ON (o.current_state = os.id_order_state) LEFT JOIN ps_address a ON (a.id_address = o.id_address_delivery) LEFT JOIN ps_address ab ON (ab.id_address = o.id_address_invoice) LEFT JOIN ps_customization cu ON (cu.id_cart = o.id_cart) LEFT JOIN ps_customized_data cd ON (cd.id_customization = cu.id_customization) GROUP BY d.id_order, d.id_order_detail ORDER BY d.id_order DESC Merci encore si une bonne âme peut m'aider. Bonne journée Laurent Link to comment Share on other sites More sharing options...
Eolia Posted November 11, 2020 Share Posted November 11, 2020 ajoutez ps_order_cart_rule^^ Link to comment Share on other sites More sharing options...
laurentdevilleplee Posted November 11, 2020 Author Share Posted November 11, 2020 (edited) Merci Eolia Mais à quel endroit dois je ajouter : ps_order_cart_rule ? je l'ai ajoutée après os.name AS state, en modifiant la racine de mes tables c'est à dire os.name AS state, gc0f_order_cart_rule, Merci pour votre précision Laurent Edited November 11, 2020 by laurentdevilleplee (see edit history) Link to comment Share on other sites More sharing options...
Mediacom87 Posted November 11, 2020 Share Posted November 11, 2020 Bonjour, un très bon début pour comprendre ce que l'on fait avec SQL : https://openclassrooms.com/fr/courses/4449026-initiez-vous-a-lalgebre-relationnelle-avec-le-langage-sql Link to comment Share on other sites More sharing options...
laurentdevilleplee Posted November 11, 2020 Author Share Posted November 11, 2020 1 minute ago, Mediacom87 said: Bonjour, un très bon début pour comprendre ce que l'on fait avec SQL : https://openclassrooms.com/fr/courses/4449026-initiez-vous-a-lalgebre-relationnelle-avec-le-langage-sql Oui, merci. Cependant, il faudrait que je suive une seconde formation pour m'adapter aux modele de données et au formatage des requetes propre à Prestashop. Je n'envisage pas de démarrer tout de suite une formation dans le domaine mais plus tard pourquoi pas. Link to comment Share on other sites More sharing options...
Mediacom87 Posted November 11, 2020 Share Posted November 11, 2020 il y a 1 minute, laurentdevilleplee a dit : je suive une seconde formation pour m'adapter aux modele de données et au formatage des requetes propre à Prestashop PrestaShop respecte le langage SQL propose à MySQL, rien de particulier donc si on connait el SQL on sait faire des requêtes sur PrestaShop. Link to comment Share on other sites More sharing options...
Eolia Posted November 11, 2020 Share Posted November 11, 2020 dans le select, rajoutez: ocr.name as code, et dans les jointures, après celle de ps_order: LEFT JOIN ps_order_cart_rule ocr ON (ocr.id_order = o.id_order) Link to comment Share on other sites More sharing options...
laurentdevilleplee Posted November 11, 2020 Author Share Posted November 11, 2020 Eolia, merci pour votre patience. Voici la requete avec mes modifications et les bonnes racines des tables. On avance ! J'ai une premiere colonne qui indique frais de port offert... Mais j'aurai souhaité le code promo, car il est spécifique a chaque partenaire. Pour le filtrer ensuite dans mon export... Je suis embetant ! SELECT ocr.name as code, o.date_add, d.id_order, CONCAT_WS(' ', g.firstname, g.lastname) AS customer, os.name AS state, d.product_name, d.product_ean13, d.product_quantity, c.name AS carrier_name, CONCAT_WS(' ', a.lastname, a.firstname, a.address1, a.address2, a.postcode, a.city) AS address_delivery, REPLACE(IFNULL(GROUP_CONCAT(cd.value), ''), '"', '\'') AS customized_data FROM gc0f_order_detail d LEFT JOIN gc0f_orders o ON (d.id_order = o.id_order) LEFT JOIN gc0f_order_cart_rule ocr ON (ocr.id_order = o.id_order) LEFT JOIN gc0f_customer g ON (o.id_customer = g.id_customer) LEFT JOIN gc0f_carrier c ON (o.id_carrier = c.id_carrier) LEFT JOIN gc0f_order_state_lang os ON (o.current_state = os.id_order_state) LEFT JOIN gc0f_address a ON (a.id_address = o.id_address_delivery) LEFT JOIN gc0f_address ab ON (ab.id_address = o.id_address_invoice) LEFT JOIN gc0f_customization cu ON (cu.id_cart = o.id_cart) LEFT JOIN gc0f_customized_data cd ON (cd.id_customization = cu.id_customization) GROUP BY d.id_order, d.id_order_detail ORDER BY d.id_order DESC Link to comment Share on other sites More sharing options...
laurentdevilleplee Posted November 11, 2020 Author Share Posted November 11, 2020 Dans ma table gc0f_cart_rule j'ai id_cart_rule qui contient dans la colonne "code" le nom du code promo. Mais apres je ne sais pas comment aller le chercher pour l'ajouter dans ma requete. Merci pour votre aide Link to comment Share on other sites More sharing options...
Eolia Posted November 12, 2020 Share Posted November 12, 2020 alors si votre table comporte la colonne code remplacez ci-dessus: ocr.name as code, par ocr.code, Link to comment Share on other sites More sharing options...
laurentdevilleplee Posted November 12, 2020 Author Share Posted November 12, 2020 (edited) Merci Eolia Mais avec ce changement, le fichier généré est vide. Plus aucune donnée. J'ai essayé avec ocr.code as code, Mais rien non plus. Je suis navré. Je ne pige vraiment pas grand chose a la structure de cette requête. Ce que je comprend, c'est que dans la table order_cart_rule, image jointe, j'ai dans la colonne "name" le nom du bon de reduction". Mais dans la colonne id_cart_rule, valeur "2" j'ai l'id qui fait le lien avec la table cart_rule qui elle, contient le code promo dans la colonne "code". Cf les deux captures d'écran. Comment modifier la requete ? Laurent Edited November 12, 2020 by laurentdevilleplee (see edit history) 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