RatamaHata Posted August 13, 2018 Share Posted August 13, 2018 Bonjour à tous, Voilà je me suis lancé dans la migration de PS 1.7 depuis 1.6. Je décide de repartir sur une installe propre en conservant mes données. Pour le moment je fais une installe en local avec MAMP. Je pars donc avec une base Ps 1.7.4.2 vide sur laquelle j'importe mes données clients, cms, produits, commandes, catégories, stock... Tout se passe bien sauf quand, depuis le BackOffice, je vais voir mes Produits j'ai les erreurs suivante: Unknown column 'state' in 'where clause'<br /><br /><pre>SELECT SQL_CALC_FOUND_ROWS p.`id_product` AS `id_product`, p.`reference` AS `reference`, p.`price` AS `price`, p.`id_shop_default` AS `id_shop_default`, p.`is_virtual` AS `is_virtual`, pl.`name` AS `name`, pl.`link_rewrite` AS `link_rewrite`, sa.`active` AS `active`, shop.`name` AS `shopname`, image_shop.`id_image` AS `id_image`, cl.`name` AS `name_category`, 0 AS `price_final`, pd.`nb_downloadable` AS `nb_downloadable`, sav.`quantity` AS `sav_quantity`, IF(sav.`quantity`<=0, 1, 0) AS `badge_danger` FROM `ps_product` p LEFT JOIN `ps_product_lang` pl ON (pl.`id_product` = p.`id_product` AND pl.`id_lang` = 1 AND pl.`id_shop` = 1) LEFT JOIN `ps_stock_available` sav ON (sav.`id_product` = p.`id_product` AND sav.`id_product_attribute` = 0 AND sav.id_shop = 1 AND sav.id_shop_group = 0 ) JOIN `ps_product_shop` sa ON (p.`id_product` = sa.`id_product` AND sa.id_shop = 1) LEFT JOIN `ps_category_lang` cl ON (sa.`id_category_default` = cl.`id_category` AND cl.`id_lang` = 1 AND cl.id_shop = 1) LEFT JOIN `ps_category` c ON (c.`id_category` = cl.`id_category`) LEFT JOIN `ps_shop` shop ON (shop.id_shop = 1) LEFT JOIN `ps_image_shop` image_shop ON (image_shop.`id_product` = p.`id_product` AND image_shop.`cover` = 1 AND image_shop.id_shop = 1) LEFT JOIN `ps_image` i ON (i.`id_image` = image_shop.`id_image`) LEFT JOIN `ps_product_download` pd ON (pd.`id_product` = p.`id_product`) WHERE (1 AND state = 1) ORDER BY `id_product` desc LIMIT 0, 20 ;</pre> Je ne sais pas comment interpréter ça. Mon bagage informatique ne me permet pas de me dépatouiller sans aide. Ça me dépasse. Si quelqu'un peut me donner une piste vers quoi chercher je suis prêt à faire l'effort de me casser la tête. Merci d'avance Link to comment Share on other sites More sharing options...
Mediacom87 Posted August 13, 2018 Share Posted August 13, 2018 il y a 32 minutes, RatamaHata a dit : j'importe mes données clients, cms, produits, commandes, catégories, stock... C'est à dire ? Quelle procédure utilisez vous ? Link to comment Share on other sites More sharing options...
RatamaHata Posted August 13, 2018 Author Share Posted August 13, 2018 Je récupère les tables avec les données du site : ps_address ps_customer ps_customer_group ps_customer_message ps_customer_thread ps_message ps_message_readed ps_cms ps_cms_block ps_cms_block_lang ps_cms_block_page ps_cms_block_shop ps_cms_category ps_cms_category_lang ps_cms_category_shop ps_cms_lang ps_cms_role ps_cms_role_lang ps_cms_shop ps_attribute ps_attribute_group ps_attribute_group_lang ps_attribute_group_shop ps_attribute_impact ps_attribute_lang ps_attribute_shop ps_category ps_category_group ps_category_lang ps_category_product ps_category_shop ps_product ps_product_attachment ps_product_attribute ps_product_attribute_combination ps_product_attribute_image ps_product_attribute_shop ps_product_carrier ps_product_country_tax ps_product_download ps_product_group_reduction_cache ps_product_lang ps_product_sale ps_product_shop ps_product_supplier ps_product_tag ps_stock ps_stock_available ps_stock_mvt ps_stock_mvt_reason ps_stock_mvt_reason_lang ps_cart ps_cart_cart_rule ps_cart_product ps_cart_rule ps_cart_rule_country ps_cart_rule_lang ps_orders ps_order_carrier ps_order_cart_rule ps_order_detail ps_order_detail_tax ps_order_history ps_order_invoice ps_order_invoice_payment ps_order_invoice_tax ps_order_payment ps_carrier ps_carrier_group ps_carrier_lang ps_carrier_shop ps_carrier_tax_rules_group_shop ps_carrier_zone ps_range_price ps_range_weight ps_tax ps_tax_lang ps_tax_rule ps_tax_rules_group ps_tax_rules_group_shop Et je les remplace dans ma nouvelle base en local avec PS 1.7 Link to comment Share on other sites More sharing options...
Mediacom87 Posted August 13, 2018 Share Posted August 13, 2018 Et vous avez bien contrôlé que les structures des tables étaient identiques ? Link to comment Share on other sites More sharing options...
RatamaHata Posted August 13, 2018 Author Share Posted August 13, 2018 En effet les tables des produits n'ont pas tout à fait la même structure. Peut être même d'autres mais alors je dois tout vérifier. Et comment réinjecter toute les données dans une table qui n'a pas tout à fait la même structure ? Y a t-il une manipulation qui permet d'automatiser l'injection sans tout modifier ? Comme je le vois : j'exporte mes tables PS 1.6. Dans ce fichier sql je modifie la structure des tables pour qu'elles aient la même structure que PS 1.7 ainsi que les attributs pour que ça colle. Ce qui fait un boulot monstre si je dois faire ça sur toute les tables que je souhaite sauver. Je viens de le faire pour ma table ps_product et j'avoue que j'ai résolu l'erreur du début de mon post. Si c'est la méthode pour faire une migration propre je vais le faire mais c'est un gros boulot... Link to comment Share on other sites More sharing options...
ChDUP Posted August 13, 2018 Share Posted August 13, 2018 Il est clair que les tables des bases 1.6 et 1.7 n'ont pas les memes structures, Mediacom a raison ! Vous pouvez utiliser l'outil d'import de Presta (il existe toujours sur 1.7 ?) ainsi il se debrouillera pour ranger correctement vos données sur la base de la 1.7 Link to comment Share on other sites More sharing options...
RatamaHata Posted August 13, 2018 Author Share Posted August 13, 2018 Cet outil d'import c'est celui proposé d'origine par Prestashop ? J'ai exporté mes produits depuis PS 1.6 et fais un import sur 1.7 via l'outil d'import mais je me retrouve qu'avec une partie des données. Par exemple il manque les descriptions de mes produits. Pour l'importation des clients ça coince car il gère pas les mots de passe, le champ n'y est pas. Enfin je ne trouve pas très pratique l'outil natif d'importation des données. Je suis peut-être loin de le maîtriser aussi... Link to comment Share on other sites More sharing options...
brikobike Posted August 15, 2018 Share Posted August 15, 2018 Bonjour RatamaHata, je pense que tu devrais trouver des réponses à ton problème sur cet excellent article. https://www.team-ever.com/un-prestashop-neuf-sans-perte-de-donnees/ Link to comment Share on other sites More sharing options...
RatamaHata Posted August 15, 2018 Author Share Posted August 15, 2018 Bonjour brikobike, Oui c'est l'article qui m'a le plus inspiré pour faire la migration. Mais justement c'est à partir de cette méthode que j'ai des problèmes. Déjà les tables qu'ils préconisent de sauvegarder puis celle à supprimer dans la base ne sont pas les mêmes. Donc j'ai dû reprendre leur liste. Et puis se pose le problème de structure des tables. On conserve les structure des tables de PS 1.6 dans du PS 1.7. Je pensais tout simplement essayer cette méthode https://www.prestashop.com/fr/blog/mettre-a-jour-ma-boutique-prestashop-1-6-vers-1-7/ Mais il ne pose pas le problème d'importation des données. Je vais essayé ça aujourd'hui voir se que ça donne. Link to comment Share on other sites More sharing options...
brikobike Posted August 15, 2018 Share Posted August 15, 2018 Ok, je t'avoue que je n'ai pas testé, mais je pense que tu devrais contacter Cyril Chalamon qui a écrit l'article pour lui exposer tes problèmes, il te répondra certainement, je crois même qu'il est sur le forum également.. Link to comment Share on other sites More sharing options...
brikobike Posted August 15, 2018 Share Posted August 15, 2018 Attention tout de même avant de passer a 1.7, il y a beaucoup d'option gratuites sur 1.6 qui sont devenues payantes sur 1.7, et pas mal de modules encore incompatibles ou avec une mise a jour payante, j'en ai malheureusement fait les frais sans le savoir Link to comment Share on other sites More sharing options...
RatamaHata Posted August 15, 2018 Author Share Posted August 15, 2018 Oui j'ai lu les commentaires sur son article. Je retrouve les mêmes problème que j'ai eu. Bon j'ai entrepris la mise à jour avec cette méthode https://www.prestashop.com/fr/blog/mettre-a-jour-ma-boutique-prestashop-1-6-vers-1-7 Je n'ai pas eu d'erreur jusqu'à arriver au backoffice avec l"Accès interdit" à tous les onglets et tout le contenu du BackOffice. Ça promet... Une idée pour ce problème ? Je fais le tour du net en attendant. Oui j'ai cru comprendre en faisant le tour du net que c'était pas forcément une bonne idée de passer sur PS 1.7. Mais PS 1.6 ne sera plus suivit à partir d'octobre donc on aura a pas vraiment le choix non ? Les modules dont j'ai besoin sont compatible 1.7 après j'ai un site très sobre avec peu d'option graphique... Merci Link to comment Share on other sites More sharing options...
RatamaHata Posted August 15, 2018 Author Share Posted August 15, 2018 C'est une question de droit d'accès des utilisateurs ? Je fouille la BDD pour corriger ça. Link to comment Share on other sites More sharing options...
RatamaHata Posted August 15, 2018 Author Share Posted August 15, 2018 Ok j'ai résolu ce dernier problème: j'ai dû ré-ordonner ps_access et ps_autorization_role en fonction de la structure que propose PS 1.7 de base. En gros j'ai vidé ces deux tables et j'ai ré-injecté les données proposées par la dernière version de PS. J'ai accès à mes onglets sans erreurs pour moment sauf la page maintenance qui bug: INFO 15:07:10 request Matched route "admin_maintenance". DEBUG 15:07:10 security Read existing security token from the session. DEBUG 15:07:10 security User was reloaded from a user provider. DEBUG 15:07:10 doctrine SELECT name FROM ps_module WHERE active = 1 INFO 15:07:11 php User Deprecated: Implementing "Symfony\Component\HttpKernel\DataCollector\DataCollectorInterface" without the "reset()" method is deprecated since Symfony 3.4 and will be unsupported in 4.0 for class "Csa\Bundle\GuzzleBundle\DataCollector\GuzzleCollector". CRITICAL 15:07:11 php Uncaught Exception: Expected argument of type "object, array or empty", "string" given CRITICAL 15:07:11 request Uncaught PHP Exception Symfony\Component\Form\Exception\UnexpectedTypeException: "Expected argument of type "object, array or empty", "string" given" at /home/energybiux/www/vendor/symfony/symfony/src/Symfony/Component/Form/Extension/Core/DataMapper/PropertyPathMapper.php line 41 Je bloque là pour le moment. Je ne peux pas activer mon site pour le coup. 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