Broceliande Posted February 11, 2010 Share Posted February 11, 2010 Bonjour à tous,J'espère poster dans la bonne section.A ce jour , j'ai implémenté sur une boutique une extension du module transport.La problèmatique était la suivante :La plupart des pays doivent être tarifés en fonction du poids.En france , mon client tarife un prix fixe pour l'ensemble des commandes, et offre le transport à partir d'un seuil de commande.Facile me direz vous ? 2 tranches de prix 0 à x et x à 1000000.... , le tarif pour la premiere et 0 pour la seconde Seulement tous les autres transports doivent se baser sur le poids et non le prix ( ce choix est malheureusement effectué pour tous les transporteurs)Facile alors, me direz vous ? Il suffit de mettre le transport offert à partir de ... € dans la config générale .Seulement là aussi le paramètre est global...J'ai donc modifié deux classes qui me permettent d'avoir des paramètres indépendants de tranche (poids ou prix) , pour chaque transporteur.Je ne sais pas si ceci intéresse du monde, mais à ce stade ma modif fonctionne mais n'est encore qu'un tweak , j'entends par là que rien dans l'admin ne permet de configurer quel transporteur utilise telle ou telle tranche , que le module n'est pas encore 'installable' etc...J'attends donc de savoir si une telle extension peux interesser du monde avant d'aller au delà de ce qui satisfait déja mon client en terme de fonctionnement et passer du temps à la rendre 'portable et installable'.Merci de vos avis et encouragements,Cdt Broceliande Link to comment Share on other sites More sharing options...
Edouard1313 Posted February 17, 2010 Share Posted February 17, 2010 JE recherche egalement ce type de module car j'envoie en fonction du prix et non du poids. J'avais trouve un maniere de regler ceci en arrangant zones et tranches et en recreant les zone comme pays et autantde transporteurs par pays...complexe qd meme...malheureusement j ai l impression que le module shipping n est pas tres stable et tout s est deregle tout seul... as tu une explication a cela? car avant le shipping se calculait bien en fonction du prix...merci Link to comment Share on other sites More sharing options...
Broceliande Posted February 19, 2010 Author Share Posted February 19, 2010 Salut, Content d'avoir au moins une réponse à mon post Je ne crois pas que le transport soit instable sur presta, pas une seconde.Si tes calculs se font désormais selon le poids et non par rapport au prix , c'est que tu as changé ce fameux paramètre 'global' à tous les transporteurs Ce paramètre se règle lorsque tu cliques sur l'onglet transport dans ton admin.il y a deux champs : En fonction du prix total En fonction du poids totalMa modif permet justement d'avoir une gestion distincte par transporteur et non un seul paramètre partagé pour l'ensemble des transporteurs.Un exemple simple :- tu offres le transport en france à partir de 30€ de commande :1) tu règles un transporteur à priori 'colissimo france' pour se comporter comme tel de 0 à 30€ de commande , 5.50€ de 30 à xxxxxxxx , 0€- Dans le système presta actuel tous tes tranporteurs devront utiliser des tranches de prix : pas glop - avec la modif que je propose , chaque transporteur peut se comporter différement.Comme je l'ai dis , je n'ai rien à ce jour d'installable, ni d'administrable , mais en cas de besoin , pas de problème pour que je poste ici les modifs que j'ai effectuées (très peu en fait ) , et le modus opérandi pour configurer pour que cela fonctionne tout le temps (car chaque fois qu'un paramètre de transporteur est modifié , presta duplique ce dernier dans la table avec les nouveaux paramètres. Ce qui te fais perdre à chaque fois la config 'individuelle' du comportement par tranches et par transporteur .C'est la raison pour laquelle je demandais si cela valait la peine d'implémenter ma modif plus en fond ou non. car en l'état elle suffit à mon client.Just let me know. Link to comment Share on other sites More sharing options...
easybizness Posted February 19, 2010 Share Posted February 19, 2010 Bonjour tous le monde,Moi j'aimerais bien avoir le détail de ta modif broceliande,Merci,Vincent Link to comment Share on other sites More sharing options...
Broceliande Posted February 19, 2010 Author Share Posted February 19, 2010 ok easybizness , voici brièvement mais exactement ce que j'ai fais sur presta 1.2.5 :1) Ajout dans la table [ps_]carrier d'un champ ps_shipping_method tinyint 12) Modif de la classe Carrier /classes/Carrier.php :Ligne 44 juste après /** @var boolean Carrier module */ public $is_module; Ajout de : /** @var boolean Carrier ps_shipping_method*/ public $ps_shipping_method; ligne 49 protected $fieldsValidate = array('id_tax' => 'isInt', 'name' => 'isCarrierName', 'active' => 'isBool', 'url' => 'isAbsoluteUrl', 'shipping_handling' => 'isBool', 'range_behavior' => 'isBool'); devient : protected $fieldsValidate = array('id_tax' => 'isInt', 'name' => 'isCarrierName', 'active' => 'isBool', 'url' => 'isAbsoluteUrl', 'shipping_handling' => 'isBool', 'range_behavior' => 'isBool', 'ps_shipping_method' => 'isBool'); ligne 71 , juste après $fields['is_module'] = intval($this->is_module); ajout de $fields['ps_shipping_method'] = intval($this->ps_shipping_method); Ensuite on s'attaque à /classes/Cart.php ligne 719 le bloc if devient : // Get shipping cost using correct method if ($carrier->range_behavior) { // Get id zone if (isset($this->id_address_delivery) AND $this->id_address_delivery) $id_zone = Address::getZoneById(intval($this->id_address_delivery)); else $id_zone = intval($defaultCountry->id_zone); if (($carrier->ps_shipping_method AND (!Carrier::checkDeliveryPriceByWeight($carrier->id, $this->getTotalWeight(), $id_zone))) OR (!$carrier->ps_shipping_method AND (!Carrier::checkDeliveryPriceByPrice($carrier->id, $this->getOrderTotal(true, 4), $id_zone)))) $shipping_cost += 0; else { if (intval($carrier->ps_shipping_method)) $shipping_cost += $carrier->getDeliveryPriceByWeight($this->getTotalWeight(), $id_zone); else $shipping_cost += $carrier->getDeliveryPriceByPrice($orderTotal, $id_zone); } } update du 9/03 , un oubli ... Fichier /order.phpfonction function displayCarrier()juste après la ligne $resultsArray = array(); remplacer la boucle foreach par foreach ($result AS $k => $row) { $carrier = new Carrier(intval($row['id_carrier'])); if (($carrier->ps_shipping_method AND $carrier->getMaxDeliveryPriceByWeight($id_zone) === false) OR (!$carrier->ps_shipping_method AND $carrier->getMaxDeliveryPriceByPrice($id_zone) === false)) { unset($result[$k]); continue ; } if ($row['range_behavior']) { // Get id zone if (isset($cart->id_address_delivery) AND $cart->id_address_delivery) $id_zone = Address::getZoneById(intval($cart->id_address_delivery)); else $id_zone = intval($defaultCountry->id_zone); if (($carrier->ps_shipping_method AND (!Carrier::checkDeliveryPriceByWeight($row['id_carrier'], $cart->getTotalWeight(), $id_zone))) OR (!$carrier->ps_shipping_method AND (!Carrier::checkDeliveryPriceByPrice($row['id_carrier'], $cart->getOrderTotal(true, 4), $id_zone)))) { unset($result[$k]); continue ; } } $row['name'] = (strval($row['name']) != '0' ? $row['name'] : Configuration::get('PS_SHOP_NAME')); $row['price'] = $cart->getOrderShippingCost(intval($row['id_carrier'])); $row['price_tax_exc'] = $cart->getOrderShippingCost(intval($row['id_carrier']), false); $row['img'] = file_exists(_PS_SHIP_IMG_DIR_.intval($row['id_carrier']).'.jpg') ? _THEME_SHIP_DIR_.intval($row['id_carrier']).'.jpg' : ''; $resultsArray[] = $row; } Voilà , donc il suffit après de renseigner le champ ps_shipping_method de la table [ps_]carrier selon le comportement souhaité : 0 = par tranche de prix , 1 = par tranche de poids , une fois qu'on a configuré les tranches adéquates dans l'admin bien sûr.Update : quelques posts plus bas vous trouverez le fichier à remplacer dans l'admin pour la gestion directe de ces valeurs dans le BOLa limitation du truc , à cette heure , est que malheureusement, chaque fois qu'on enregistre une modif sur un transporteur (nom ou autre) alors le champ est à renseigner de nouveau , car presta crée un nouveau transporteur chaque fois et désactive le précédent . je n'ai pas eu encore le temps d'adapter la partie admin . Voilà c'est pas grand chose comme modif, mais ça marche , on peut mixer tranches de poids et prix , et je n'hesiterais pas à poster les modifs côté admin dès que j'aurais 5 mn devant moi pour les faire, surtout si ça interesse du monde Link to comment Share on other sites More sharing options...
easybizness Posted February 19, 2010 Share Posted February 19, 2010 Ingénieux...mais effectivement un module serait plus judicieux. Après il faut voir la demande... Link to comment Share on other sites More sharing options...
1m22 Posted February 19, 2010 Share Posted February 19, 2010 Bonsoir à tousJe suis intéresser pour tes modifs mais comme je suis limitée dans l'écriture des codes une question toute bête :où trouves-tu la table ps_carrier ?Le reste j'ai tout trouvé.je pourrais tester sur ma version 1.2.0.8merci1m22 Link to comment Share on other sites More sharing options...
Broceliande Posted February 19, 2010 Author Share Posted February 19, 2010 La table est en fait la table carrier dans la base de données, à laquelle tu pourras facilement ajouter un champ en utilisant par exemple phpmyadminLorsque j'ai noté [ps_]carrier, j'ai juste mis entre crochets le préfixe par défaut de la table , généralement ps_Selon le cas donc la table sera juste 'carrier' ou 'xxx_carrier' , selon ton installation et le préfixe de table que tu auras choisi .Dans tous les cas et ne serait-ce que pour ajouter le champ , il te faut une interface type phpmyadmin (la plus courante) pour arriver à tes fins.Tu auras également besoin de cette même interface pour passer les champs ps_shipping_method à 0 ou 1 selon la méthode désirée, puisque je le rappelle je n'ai encore effectué aucune modif de l'admin pour gérer ça facile , je garde l'enrobage pour plus tard si cette fonctionnalité vous intéresse.Autre rappel , chaque modification effectuée sur un transporteur implique de re-renseigner ce champ (sic!) car presta duplique le transporteur à chaque modif pour il me semble garder la config précédente dans les commandes déja passées, il passe le champ 'active' de l'ancien à 0 et celui du nouveau à 1 (plus facile pour toit donc de se repérer). Link to comment Share on other sites More sharing options...
1m22 Posted February 19, 2010 Share Posted February 19, 2010 Merci pour ta réponse, mais je vais devoir demander de l'aide je n'ai jamais utilisé phpmyadmin.je te tiens au courant1m22 Link to comment Share on other sites More sharing options...
paquitojuan Posted February 20, 2010 Share Posted February 20, 2010 moi je serais intéressé par un module de ce type parce que sur mon site j'aurai besoin du tarif aux prix et aux poids.Fera tu le module ou pas?merci à toi Link to comment Share on other sites More sharing options...
1m22 Posted February 20, 2010 Share Posted February 20, 2010 Bonsoirje pense aussi qu'un module serai le bien venu, la manip n'est pas aisée pour des novices en informatique comme moi par exemple. Je n'est pas testé tes modifs car les amis qui pouvaient m'aider son sur de belles pentes enneigées.1m22 Link to comment Share on other sites More sharing options...
Broceliande Posted February 21, 2010 Author Share Posted February 21, 2010 moi je serais intéressé par un module de ce type parce que sur mon site j'aurai besoin du tarif aux prix et aux poids.Fera tu le module ou pas?merci à toi C'est dans mes projets oui, sauf si ... sauf que ....Sauf que cette modif est plus une extension du code existant qu'un module en soi.Sauf donc , si la prestateam elle même passait par ici et décidait que oui , pourquoi pas , au vu de la simplicité de la modif et du bénéfice que l'on en retire , rendre ce paramètre individuel et donc intégrer plutôt ceci dans presta nativement.Celà sous entends que je devrais sous peu compléter mes modifs ci dessus par celles qui en découlent dans l'admin, espérant que personne n'y verra quelque chose de bloquant.Du coup nous n'aurions plus besoin d'un 'module' ou plutot un module de patch, que pour les versions antérieures. Link to comment Share on other sites More sharing options...
Broceliande Posted February 21, 2010 Author Share Posted February 21, 2010 Bonsoirje pense aussi qu'un module serai le bien venu, la manip n'est pas aisée pour des novices en informatique comme moi par exemple. Je n'est pas testé tes modifs car les amis qui pouvaient m'aider son sur de belles pentes enneigées.1m22 Je reconnais que cette manip demande à l'heure actuelle de mettre les mains dans le cambouis , en même temps ces dernières ne sont pas non plus véritablement niveau expert. Un peu de doc sur phpmyadmin et les bases de données et même seul tu devrais pouvoir t'en sortir...ou attendre que tes potes reviennent du ski Link to comment Share on other sites More sharing options...
AS-GPS Posted February 25, 2010 Share Posted February 25, 2010 Bonjour à tous,je suis moi aussi intéressé par ces fonctionnalités. Que ce soit natif dans l'application ou via un module. Link to comment Share on other sites More sharing options...
Broceliande Posted February 25, 2010 Author Share Posted February 25, 2010 Ok , voilà un bout de plus : le code qui rend administrable par transporteur dans votre BOJe manque énormément de temps pour faire un "package" , mais si vous avez déja effectué les modifs précédemment décrites, alors updatez juste votre fichier /votreadmin/tabs/AdminShipping.php et remplacez le par le fichier attaché à ce post:Attention !!! , si vous avez installé un module type mondial relay , alors une ligne diffère, adaptez ou postez ici ...Dans tous les cas , faites en une sauvegarde avant... AdminShipping.php Link to comment Share on other sites More sharing options...
Broceliande Posted February 25, 2010 Author Share Posted February 25, 2010 Errata : Il y a un bugJe le corrige et je reviens avec un fichier propreEdit :Voilà c'est règle , fichier à jour dans le post précédentEnjoy Link to comment Share on other sites More sharing options...
1m22 Posted March 2, 2010 Share Posted March 2, 2010 Bonjour à tousJe viens de faire les modifs et ça ne fonctionne pas. Ma version de prestashop est la V.1.2.0.8 peut-être que ça vient de là.J' ai peut-être aussi mal créé mon champ (c'est la première fois que je fait cette manip) je mets des images de la création du champ. Link to comment Share on other sites More sharing options...
Broceliande Posted March 4, 2010 Author Share Posted March 4, 2010 Bonjour 1m22 , j'ai vu ton pm mais pas eu le temps d'y répondre encore . D'ailleurs c'est une bonne chose que tu aies posté ici car c'est valable pour d'autres , alors qu'en pm ...Ton champ est bon , ( tiny int (1) etc ... ) , sauf que son nom n'est pas bon :le nom du champ est ps_shipping_method et non shipping_method seul .Du coup je vais revoir mes posts , peut être ais-je 'rippé' en mettant le nom du champEdit : 1) Ajout dans la table [ps_]carrier d’un champ ps_shipping_method tinyint 12) Modif de la classe Carrier ..... Mon indication était bonne.Peut être donc as tu fais l'amalgame entre le ps_ du champ et le préfixe couramment identique de la table, en tout cas tu as tronqué le nom du champ ,Pour info ce champ en tant que variable globale est bel et bien nommé PS_SHIPPING_METHOD dans la table configuration, j'ai donc repris la même syntaxe , mais en minuscule ( là c'est un nom de champ ) , pour la cohérence et d'eventuels débugs. Link to comment Share on other sites More sharing options...
1m22 Posted March 4, 2010 Share Posted March 4, 2010 Je te remercie pour ces précisions. Je ferais un essaie ce week-end et je te tiens courantmerci à+1m22 Link to comment Share on other sites More sharing options...
1m22 Posted March 8, 2010 Share Posted March 8, 2010 Bonsoir BrocéliandeAujourd'hui je me trouve très bête. J'ai fait les modifs et tout a l'air de fonctionner correctement.Mais je n'arrive pas à mettre des francos de port pour chaque transporteur.Par exemple j'aimerai :un franco pour la France à 70 euros transporteur LA POSTEun franco pour l'Europe à 120 euros transporteur UPSJ'ai rempli les tranches de poids selon les tarifs des transporteurs et tranches de prix selon deux critères (0 à 70 et 70 à infini pour la France même logique pour l'Europe)Comment faire ?Encore une petite chose lorsque je choisi "en fonction du poids total" ma grille de ne s'affiche pas je ne peux donc pas enregistrer les tarifs correspondants au poids.Lorsque j'ai créé mon champ ps_shipping_method j'ai mis 1 dans la rubrique "Défaut". peut-être ai-je eu tord.Par avance merci pour ton aide1m22 Link to comment Share on other sites More sharing options...
Broceliande Posted March 8, 2010 Author Share Posted March 8, 2010 Salut,Par défaut moi j'ai mis 0 à ps_shipping_method ....Pour le transport , moi j'ai fais comme ça (pas les memes valeurs mais je l'adapte à ton cas ): pour le transporteur La Poste : tu crées deux tranches de pris pour ce transporteur : 0 à 70 et 70 à 10000....Oups , je me rends compte à l'instant de ce que tu souhaites faire : avoir à la fois une tranche de poids et une tranche de prix (pour le franco de port) , pour le même transporteur .Oulàlà ... je serais tenté de dire ... Me suis-je mal exprimé ? Avec mon procédé il est désormais possible de choisir pour chaque transporteur un type de tranche (poids ou prix ) alors qu'auparavant , ce paramètre était global à tous les transporteurs.Par contre inutile de penser pouvoir utiliser les deux tranches pour un même transporteur avec cette modif , désolé si tu as pu croire le contraire...En revanche , il t'es possible de créer deux transporteurs "La poste", un utilisant les tranches de prix , l'autre le poids ....C'est à creuser comme solution et là j'ai pas trop le temps , mais ça pourrait le faire.C'est aussi à tester .On en reparle .... Link to comment Share on other sites More sharing options...
Broceliande Posted March 8, 2010 Author Share Posted March 8, 2010 Je vois en fait ce qu'il te manque à ce jour,C'est la même chose que les tranches , mais appliqué cette fois à la gratuité .En termes plus précis : avoir une gratuité de transport configurable par transporteur , et non pas globale.C'est dans un sens le même type de modif , et ce que tu soulèves peut servir à mes clients, donc je pense que je vais vite plancher sur le sujet et upgrader mes modifs en ce sens . Link to comment Share on other sites More sharing options...
1m22 Posted March 8, 2010 Share Posted March 8, 2010 Il existait avant (avril 2009) une solution qui fonctionnait bien je l'avait testée en local sur un version antérieur à celle que j'utilise actuellement (V1.2.0.8). Je te met le lien du post on ne sais jamais ça peut t'aider :http://www.prestashop.com/forums/viewthread/16701/developpement_et_modules/resolu_frais_de_port__probleme/ Link to comment Share on other sites More sharing options...
Broceliande Posted March 9, 2010 Author Share Posted March 9, 2010 Errata : Il y a une modif que j'ai oublié de répertorier , alors je vous la place ici , puis j'update mon post plus haut.La modif en question concerne le fichier order.php , à la racine de votre prestaDans ce fichier il faut modifier un peu la fonction function displayCarrier()juste après la ligne $resultsArray = array(); remplacez la boucle par le code suivant ( testé 1.2.5 , je sais pas pour les précédentes mais il est facile d'adapter)L'idée de base est de remplacer les valeurs de configuration PS_SHIPPING_METHOD par le champ individuel du transporteur $carrier->ps_shipping_method.Ce qui donne : foreach ($result AS $k => $row) { $carrier = new Carrier(intval($row['id_carrier'])); if (($carrier->ps_shipping_method AND $carrier->getMaxDeliveryPriceByWeight($id_zone) === false) OR (!$carrier->ps_shipping_method AND $carrier->getMaxDeliveryPriceByPrice($id_zone) === false)) { unset($result[$k]); continue ; } if ($row['range_behavior']) { // Get id zone if (isset($cart->id_address_delivery) AND $cart->id_address_delivery) $id_zone = Address::getZoneById(intval($cart->id_address_delivery)); else $id_zone = intval($defaultCountry->id_zone); if (($carrier->ps_shipping_method AND (!Carrier::checkDeliveryPriceByWeight($row['id_carrier'], $cart->getTotalWeight(), $id_zone))) OR (!$carrier->ps_shipping_method AND (!Carrier::checkDeliveryPriceByPrice($row['id_carrier'], $cart->getOrderTotal(true, 4), $id_zone)))) { unset($result[$k]); continue ; } } $row['name'] = (strval($row['name']) != '0' ? $row['name'] : Configuration::get('PS_SHOP_NAME')); $row['price'] = $cart->getOrderShippingCost(intval($row['id_carrier'])); $row['price_tax_exc'] = $cart->getOrderShippingCost(intval($row['id_carrier']), false); $row['img'] = file_exists(_PS_SHIP_IMG_DIR_.intval($row['id_carrier']).'.jpg') ? _THEME_SHIP_DIR_.intval($row['id_carrier']).'.jpg' : ''; $resultsArray[] = $row; } Link to comment Share on other sites More sharing options...
1m22 Posted March 9, 2010 Share Posted March 9, 2010 BonsoirUne question toute bête pour bien comprendre. Quelle nouvelle fonction apporte cette modif ?merci 1m22 Link to comment Share on other sites More sharing options...
Broceliande Posted March 9, 2010 Author Share Posted March 9, 2010 Ok alors je vais tâcher de résumer une dernière fois , mais vraiment la der , car malheureusement je manque de temps pour aller au delà :Aujourd'hui dans presta : vous avez disons (là vous remplacez par ce qui vous chante...) 4 transporteurs.vous avez pour ces transporteurs des tranches de prix ou de poids .Un paramètre global vous permet dans l'admin d'indiquer si vous voulez utiliser l'une ou l'autre de ces tranches . seulement voilà : une fois ce paramètre choisi , il est valable pour l'ensemble de vos transporteurs, et non seulement pour celui que vous éditez.Avec ce modIl est possible de spécifier pour chaque transporteur le type de tranche utilisée.C'est à dire , encore une fois à titre d'exemple , que vous pouvez avoir ce type de configuration :- Transporteur 1 : tranches de prix- Transporteur 2 : tranches de poids- Transporteur 3 : ........................................ (ad libitum)Alors que , je le répète , à ce jour , si vous cochez poids dans l'admin transport , celà affecte l'ensemble des transporteurs.Il en est de même si vous cochez prix ....Un dernier exemple plus précis donc du mod ici présent , pour la compréhension (après c'est net je ne me répete plus ) Transporteur 1 Colissimo : tranches de prix de 0 à 27 et de 27 à 10000000 , - de 0 à 27 € de commande , 5.60€- de 27 à plus : 0€ = frais de port offertsTransporteur 2 Coliposte : tranche de 0 à 0.5 kg , de 05 à 1kg , de 1 à 2 kg etc ......- tranche 1 poids de 0 à 500g : tarif xxx €- tranche 2 poids de 500g à 1000g : tarif yyy €etc....Ceci n'étant donc pas possible à ce jour dans prestashop, et rendu possible par ce mod.Voilà j'espère avoir été assez clair , cette fois , bien qu'il me semble avoir donné ce type d'exemple dans mon premier post .Sur ce bons presta à tous ! Link to comment Share on other sites More sharing options...
1m22 Posted March 10, 2010 Share Posted March 10, 2010 BonjourMerci pour ces précisions, mais hélas chez moi ça ne marche pasc'est pas grave mes clients paieront le port1m22 Link to comment Share on other sites More sharing options...
emraud Posted April 2, 2010 Share Posted April 2, 2010 Bonsoir,Pourrais-tu poster tes fichiers modifiers (si tu as mis des commentaires type //Modif...)Afin de pouvoir reproduire plus aisément tes manips ?J'ai, pour ma part, bien du mal à reporter des fragments de code sans repère.Merci. Link to comment Share on other sites More sharing options...
jazz009 Posted April 10, 2010 Share Posted April 10, 2010 Bonjour, merci Broceliande pour ces modifications et ces explications très utiles.cela correspond exactement a ma problématique.J'arrive bien a avoir la configuration de mes transporteurs en poids ou en prix et les zones sont bien attribuées.Mon seul problème est que pour le transporteur gérée en poids, ce dernier n'ai pas applique.C'est a dire que seul le prix des frais de port par défaut est affiche, sans majoration de ce qu'il y a dans le tableaux de poids.J'ai bien vérifié les modifs et tout semble bon.As tu rencontre ce problème lors de test modification ?Merci Link to comment Share on other sites More sharing options...
Broceliande Posted April 11, 2010 Author Share Posted April 11, 2010 Bonjour , Je vais essayer de reproduire ton problème , mais ici tout fonctionne bien.Peut être pourrais tu me faire gagner du temps en regardant dans la bdd les valeurs de chaque champ pour le transporteur concerné ?Il me semble avoir eu ce cas de figure au départ à cause d'un des champs shipping_handling ou range_behavior , je ne suis plus sûr.Sur la boutique qui utilise cette modif , shipping handling est à 1 partout , et range_behavior à 0Je me demande ce que tu entends par prix par défaut et majoration via le tableau de poids... En fait moi je gère mon tarif définitif via les tranches de poids ou de prix uniquement, sans frais de manut. Mais il me semble qu'ils sont correctement appliqués Link to comment Share on other sites More sharing options...
jazz009 Posted April 12, 2010 Share Posted April 12, 2010 merci d'accorder du temps a mon problème.shipping_handling est a 1 et range_behavior a 0je te met une copie d'écran de ma BDDPour être sur, j'ai refait tes modifs sur une version vierge de prestashop 1.2.5J'ai donc un affichage correct en back office avec un transporteur en fonction du prix total et un transporteur en fonction du poids total. Les zones et tranches sont bonnes.j'ai mis les frais de manutention a 0€ (copies écran BO)Malheureusement j'ai systématiquement des frais de port a 0€Je dois forcement rater un truc quelque part...merci de ton aide Link to comment Share on other sites More sharing options...
Broceliande Posted April 12, 2010 Author Share Posted April 12, 2010 Ok, merci pour ces précisions , Pour moi cela ressemble plus à un problème de zône non ? Si tu veux que je débug en live pour identifier le problème , c'est tout à fait possible, dans ce cas il me faudra un accès au BO et probablement à ton ftp, que tu peux m'envoyer en PM . Tu pourras les changer après coup histoire de rester serein .Sinon , ben là j'avoue que je sèche un peu faute de plus : a part vérifier moi même directement , ça risque d'être un peu ardu par post interposé.En debuguant je verrais très vite ce qui clocheEdit - PS: j'ai moi-même reproduit cette modif sur un prsta tout neuf à partir de mon post ici présent, et n'ai rencontré aucun souci de ce type.Par ailleurs mes modifs n'interviennent pas sur le calcul du prix , mais vont simplement chercher les infos concernant le type de tranche ailleurs.A toi de voir donc si tu veux que je jette un oeil. Il va de soi que ce sera totalement gracieux ... j'ai pas pensé à le préciser Link to comment Share on other sites More sharing options...
jazz009 Posted April 12, 2010 Share Posted April 12, 2010 alors j'ai repris tout cela pour la 3ème fois et effectivement, cela fonctionne.je vois pas vraiment ce que j'ai fait de diffèrent, d'autant que les modifs sont relativement simples et bien expliquées.Mon block cart reste a 0€ en expedition, lorsque je me connecte avec un compte acheteur hors du pays du transporteur par défaut.En revanche lorsque je passe l'etape du choix de l'adresse et des frais de livraison, ceux-ci sont correctes et la somme est bonne a l'étape du paiement. Cela m'a l'air d'etre le comportement normal de prestashop.Merci pour ton aide, Broceliande, et de ton offre de regarder la config de mon BO.Je pense que je vais pouvoir m'en tirer pour les dernières modifs des frais de port. Bonne soirée. 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