37°2 Posted February 16, 2009 Share Posted February 16, 2009 Bonsoir à tous et à toutes,Je m'arrache les cheveux depuis deux jours à essayer de régler les frais de port :cheese: Tous mes articles "test" de la boutique ont un poids de 250 GrJ'ai donc créé, une tranche de poids, une tranche de prix, un transporteur (voir screenshots)Quand je commande un article le port est de 5.30 EUR, jusque là pas de problème, dès le deuxième article commandé les problèmes commences car le port passe à 6.50 EUR hors qu'il devrait être encore de 5.30 EUR car la tranche des 500Gr n'a pas été dépassée.Le troisième article mis dans le panier conserve un transport de 6.50 EUR, ce qui est normal, mais dès qu'un quatrième article est ajouté, le port dégringole sur la 1ère tranche de transport, c'est à dire, à 5.30 EUR. Tous les articles supplémentaires ajoutés dans le panier n'auront aucun effet sur le transport qui restera calé sur 5.30 EUR de frais de port depuis le quatrième article.Vous l'aurez compris, je suis dans la panade et ai donc besoin d'un coup de main, une idée, une solution ;-) Merci par avance de votre aide.Cordialement Link to comment Share on other sites More sharing options...
37°2 Posted February 17, 2009 Author Share Posted February 17, 2009 Help me ;-) Link to comment Share on other sites More sharing options...
Fabrice Posted February 18, 2009 Share Posted February 18, 2009 c'est vrai que ce n'est pas évident au premier abord... (il te reste des cheveux ?)sinon, je vais essayer de t'aider : il y a plusieurs questions dans ton post1.250 + 250 = 500 : si tu passes dans la tranche supérieure, c'est peut-être parce qu'une déclinaison "rajoute" du poids, non ? tu as vérifié ?2.qu'as-tu mis dans "comportement des tranches" dans transporteurs ?ceci peut expliquer le passage à la tranche inférieur lorsque le poids est dépassé.3.plus globalement, reprend bien tous les paramètres (es-tu certain d'avoir choisi le bon pays ?) par exemple, en ce qui me concerne, j'ai France FRANCE france etc... si chacun des "pays" France n'est pas paramétrés comme il se doit, tu risque de passer pour un étranger, et donc un autre transport. si le transporteur n'a pas été désactivé (comportement des tranches) le phénomène du retour au prix de la première tranche peut se produire. il y a plusieurs explications possibles. toutes ont trait à un mauvais paramétrage. et comme il y en a plusieurs, à différents endroits, l'erreur est vite là.4.rassures-toi : le module fonctionne bien. il est nénamoins assez difficile à maîtriser/paramétrer au début. Link to comment Share on other sites More sharing options...
37°2 Posted February 18, 2009 Author Share Posted February 18, 2009 Bonjour Fabrice,Il me reste encore un peu de cheveux, je vais donc reprendre l'ensemble de ma configuration.Je repasse dans la soirée !Merci Link to comment Share on other sites More sharing options...
Fabrice Posted February 18, 2009 Share Posted February 18, 2009 vi. comme tu as pu le constater, ma réponse est un peu... complexe. (normal vu l'heure du post)sinon, pour résume : comme ce traitement fait appel à plusieurs variables, et comme il suffit que l'une d'elle soit erronée pour fausser le résultat (ce qui t'arrive en fait), il faut être très méthodique. Mais comme dit plus haut, il y a de fortes chances pour que ce soit tes paramètres qui soient en cause. et pas le programme... ça rassure non ? a+;-) Link to comment Share on other sites More sharing options...
37°2 Posted February 19, 2009 Author Share Posted February 19, 2009 Hello,Alors j'ai tout refait, prix transport, articles test et aussi remis le poids en KILO !Ca à l'air de bien fonctionner mise à part quand même le passage à la tranche de prix supérieur si les articles dans le panier sont égale au poids maximum d'une tranche.De coup j'ai légèrement baisser le poids des articles, et ça passe correctement.A++ Link to comment Share on other sites More sharing options...
Fabrice Posted April 5, 2009 Share Posted April 5, 2009 oui, et moi, je suis bien dans la tranche inférieure, mais le prix calculé part de la tranche sup. pas normal ça.ex :tranches : 0-10 kg -- 10.01 - 20kgproduit : 10kg : la tranche 10.01-20 kg est prise en compte. c'est bien un bug.si quelqu'un sait comment faire pour corriger cela... suis preneur.tks. Link to comment Share on other sites More sharing options...
chantane Posted April 8, 2009 Share Posted April 8, 2009 Bonjour,Comme il s'agit de variables float, je me suis dit que c'est de ce côté là qu'il fallait chercher.Il est simples de comparer des entiers, mais dans le cas de nombres flottants, lorsqu'ils sont le résultats de calculs c'est un peu plus compliqué.10 en flottant, peut être égal à 9.999999 ou 10.000001, etc...les tests de comparaison peuvent donner n'importe quoi.une solution :comparer la différence des deux valeurs par rapport à une valeur très petite, 0.01 pour les prix, 0.001 pour les poids.ou passer par des entiers en multipliant les nombres par 100 pour les prix, 1000 pour les poids, et en comparant les parties entières.fichier concerné : prestashop\classes\Carrier.phpfunction getDeliveryPriceByWeightcheckDeliveryPriceByWeightJe vais modifier le code et poster le résultat. Link to comment Share on other sites More sharing options...
chantane Posted April 8, 2009 Share Posted April 8, 2009 Dans le code,le prix (ou le poids du panier) doit être strictement inférieur à la valeur haute de la tranche, donc en cas d'égalité on passe à la tarification de la tranche supérieure.Tout dépend du fonctionnement que l'on souhaite!Pour les poids, modifier les lignes 117, 132, 171 et 186 du fichier classes\Carrier.phpchanger les 2 lignes : AND '.floatval($totalWeight).' < w.`delimiter2` par AND '.floatval($totalWeight).' <= w.`delimiter2` changer les 2 lignes : AND '.floatval($orderTotal).' < r.`delimiter2` par AND '.floatval($orderTotal).' <= r.`delimiter2` La solution la plus simple pour ne pas avoir à modifier le code, est de choisir une valeur légèrement supérieure pour limite haute de la tranche.Si la valeur limite supérieure de 10kg soit inclue dans la tranche de tarification, on met comme limite supérieure 10.001kg Link to comment Share on other sites More sharing options...
titeuf913 Posted June 14, 2011 Share Posted June 14, 2011 Bonjour,Pour ce qui ont ce problème comme moi sur prestashop 1.4.2.5, la solution ci-dessus fonctionne très bien. Cela ma éviter de nombreuse modification de poids dans mon catalogue. 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