jlweb Posted October 29, 2013 Share Posted October 29, 2013 Bonjour, Ma question concerne la version 1.5.4.0 de PS. Dans Localisation > Etats, lorsque je souhaite supprimer un Etat que j'ai créé, j'ai l'erreur suivante : Cet état a été utilisé pour au moins une adresse; il ne peut plus être supprimé J'ai vérifié partout dans le BO et dans la BDD cet état n'est utilisé nul part ... Comment le supprimer ? Merci d'avance car je tourne en rond et je préfère éviter de supprimer l'entrée de la BDD comme un bourrin en passant par phpMyAdmin... Link to comment Share on other sites More sharing options...
jlweb Posted October 30, 2013 Author Share Posted October 30, 2013 Personne n'as eu ce problème ni ne connait la solution ? Link to comment Share on other sites More sharing options...
Presta4All Posted October 30, 2013 Share Posted October 30, 2013 Essaye de jeter un coup ici classes/State.php /** * Delete a state only if is not in use * * @return boolean */ public function delete() { if (!$this->isUsed()) { // Database deletion $result = Db::getInstance()->delete($this->def['table'], '`'.$this->def['primary'].'` = '.(int)$this->id); if (!$result) return false; // Database deletion for multilingual fields related to the object if (!empty($this->def['multilang'])) Db::getInstance()->delete(bqSQL($this->def['table']).'_lang', '`'.$this->def['primary'].'` = '.(int)$this->id); return $result; } else return false; } "Effacer un etat seulement si non utilisé" Au moins on avance, on sait que ce n'est pas un bug J'imagine que si tu modifie cette partie il faudra egalement modifier l'affiche des adresses des client (BO/Front/Facture) C'est moins bourrin que de toucher a la DB Link to comment Share on other sites More sharing options...
jlweb Posted October 31, 2013 Author Share Posted October 31, 2013 Merci pour cette piste. Cependant, l'Etat que je souhaite supprimer n'est utilisé nul part donc je ne comprend pas pourquoi il ne rentre pas dans la condition car il est bel et bien "non utilisé" :/ Link to comment Share on other sites More sharing options...
Presta4All Posted November 1, 2013 Share Posted November 1, 2013 Peut etre désactiver l'etat en question avant de l'effacer ? Ou desactiver les etats dans le pays concerné pour voir si change quelque chose Link to comment Share on other sites More sharing options...
jlweb Posted November 4, 2013 Author Share Posted November 4, 2013 J'ai désactivé l'Etat, mais toujours impossible de le supprimer avec le même message d'erreur ... Et en désactivant les état dans le pays concerné j'ai une erreur quand je veux "modifier" l'Etat avec le message d'erreur m'indiquant que je dois choisir un pays pour cet Etat (alors qu'il n'y en a pas car tous mes pays ont les etats désactivés ... Enervant comme situation :/ Link to comment Share on other sites More sharing options...
Presta4All Posted November 4, 2013 Share Posted November 4, 2013 J'ai trouvé ce post sur le forum anglais : http://www.prestashop.com/forums/topic/103288-solved-cannot-delete-an-unwanted-state/ J'ai bien l'impression que la solution vient de la BDD. Le post date de 2011, donc je ne sais pas trop quel version il utilisait, mais il n'a rencontré aucun problème suite à l'effacement de l'etat directement sur la BDD. Bonne chance et partages avec nous ton expérience si tu décides de passer par la BDD Link to comment Share on other sites More sharing options...
jlweb Posted November 5, 2013 Author Share Posted November 5, 2013 (edited) J'ai trouvé ! Ce qu'il s'est passé : 1/ les états ont été ajoutés 2/ un client test a été créé sur l'état que je souhaite supprimer. 3/ j'ai désactivé l'état. Conséquence : l'adresse du client contient toujours l'id de l'état en BDD mais en BO l'état n'apparaît pas. 4/ quand je cherche à supprimer l'état depuis le BO le message d'erreur indique qu'il est utilisé (ce qui est bien le cas en BDD mais plus en BO) Solution : modifier les entrées de la table "adresses" en remplaçant les id de l'état rebel par 0. L'état n'étant plus "utilisé" on peut enfin le supprimer proprement en BO. Remarque : même problème pour les états Illinois et New York qui sont utilisé par défaut par les "fournisseurs" par défaut (Apple) Edit : Merci pour ton aide SteviaCity Edited November 5, 2013 by jlweb (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