Jump to content

[RAPPORT DE BUG] Bugs constatés sur les transporteurs presta 1.5.2


Recommended Posts

Tout d'abord le bug a été signalé sur le general ici http://www.prestasho...tionne-pas-152/

 

et j'ai trouvé les raisons de ce bug, donc autant le signaler officiellement. Par contre le faire en anglais, ca va pas être possible, je suis bien trop un bille dans cette langue pour parler technique.

 

Donc voici les problèmes constatés :

 

- Gestion de la suppression des transporteurs : Lorsque l'on supprime un transporteur, normalement cela genere un "1", dans la ligne "deleted" de la table ps_carrier. Ce 1 est donc pris en compte dans les differentes fonctions de prestahop pour ne pas faire apparaitre le transporteur effacé. Hors avec l'effacement des transporteurs "Mondial relais", cela genere un problème, et peut être avec d'autres transporteurs.

En effet dans la gestion des restriction de transporteurs (dans la fiche article si vous préférez, onglet "transport"), dans liste des transporteurs a autoriser ou non pour cet article, tous les transporteurs apparaissent, même les transporteurs mondial relais supprimés. La case "deleted" n'est sans doute pas prise en compte pour ce type de transport.

J'arrive facilement a concevoir que ce bug etait pas facile a trouver.

 

- A cause de cette erreur un autre bug apparait : Lorsque l'on a supprimé ce transporteur, vu que celui ci apparait dans la liste, si on fait une selection de restriction des transporteurs, elle n'est pas prise en compte. Les lignes selectionnées et surlignées redeviennent blanches apres validation. (Normal puisqu'un transporteur inexistant est dedans)

 

- Ayant resolu cela en effacant les lignes physiquement de la BD (pourquoi d'ailleurs les transporteurs ne sont pas effacés, mais juste modifiés en '1' sur deleted ?) , j'ai constaté un autre bug des transporteurs, plus compliqué celui la et generalisé a tous les transporteurs sans exception :

SI l'on donne a un transporteur une echelle de poids allant par exemple seulement de 10 a 15 kgs avec mode "Desactiver le transporteur si l'on depasse le poids", et que l'on selectionne ce transporteur dans la fiche article elle même (onglet "transport" de la fiche article afin d'autoriser ou non un transporteur pour un article precis) d'un produit . Alors la gestion du poids est buggué et meme si l'article fait 10 grammes, le transporteur reservé aux poids a partir de 10 kgs pourra être selectionné et sera en tous les cas visible dans la liste lors de l'achat.

C'est une erreur car le comportement devrais etre identique à la normal et le transporteur ne devrait apparaitre que lorsque le poids total a bien atteint les 10 kgs.

 

Voila, j'espere que tout cela sera transmis a l'equipe officielle, même si ce texte n'est pas traduit en anglais. En plus vu que l'equipe creatrice de prestashop est francaise, ils n'auront pas besoin de retraduire.

Mais s'il le faut vraiment, j'espère qu'un modo aura la gentillesse de mettre les lignes importantes dans la langue de shakespeare.

 

Ces bugs sont tresè handicapant, car empêchent du coup un fonctionnement logique de la boutique.

 

Merci d'avance !

Edited by Jean Francois G (see edit history)
  • Like 1
Link to comment
Share on other sites

- Gestion de la suppression des transporteurs : Lorsque l'on supprime un transporteur, normalement cela genere un "1", dans la ligne "deleted" de la table ps_carrier. Ce 1 est donc pris en compte dans les differentes fonctions de prestahop pour ne pas faire apparaitre le transporteur effacé.

Hors dans la gestion des restriction de transporteurs (dans la fiche article si vous préférez, onglet "transport"), dans liste des transporteurs a autoriser ou non pour cet article, tous les transporteurs apparaissent, même ceux supprimés. La case "deleted" n'est sans doute pas prise en compte.

 

Bizarrement, le code correspondant dans le controller admin mentionne bien que l'on ne veut pas y voir figurer les transporteurs effacés. Je vais tester cette partie du problème de suite.

 

Edit

Après tests, je ne confirme pas de bug.

Edited by J. Danse (see edit history)
Link to comment
Share on other sites

attention, ce bug apparait si le transporteur est "mondial relais", je l'ai precisé en correction dans le premier post.

 

Et concernant les autres bugs signalés ? car moi j'ai fait plusieurs tests, dont un en reprenant un prestashop vierge et en recommancant et le dernier problème est identique.

Edited by Jean Francois G (see edit history)
Link to comment
Share on other sites

Ceci n'est pas un bug Prestashop en tant que tel mais bien un énorme bug du module MondialRelay.

Les transporteurs Prestashop fonctionnent de la manière décrire (delete etc) depuis la 0.8.5 il serait temps que ceux qui ont développé MondialRelais se réveillent.

 

Grosso modo le module doit s'accrocher au hook updateCarrier et suivre les évolutions concernant le transporteur.

Prestashop ne supprime pas physiquement de transporteur car des commandes ont pu être passées avec on transporteur maintenant supprimé et il doit maintenir la cohérence des données.

 

S'accrocher à ce hook et le B.A. ba d'un module transporteur.

 

J'avais proposé un évolution (il y a 2 ans) pour que Prestashop ne fasse pas systématiquement de clone/delete à la moindre modification du transporteur mais ceci ne resoudrait pas le problème intrinsèque concernant MondialRelais.

 

http://forge.prestashop.com/browse/PSCFI-1033

 

Actuellement le bug provient du fait que si le transporteur est bien suivi et accroché au module après clonage on réplique sa configuration depuis la dernière connu et comme on ne peux plus changer la dernière puisque qu'elle n'existe que pour l'histoire on boucle.

 

En attendant que quelqu'un daigne ré-écrire cette partie du module corrige sa config à la main dans la BDD

Link to comment
Share on other sites

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 account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...