Jump to content

Recommended Posts

Bonjour,

J'ai un petit souci sur ma boutique,

Sur certains articles je ne peux pas rentrer le prix d'achat, 

Lorsque je saisis le montant, les chiffres après la virgule disparaissent et il m'est impossible de mettre un prix.

Auriez vous une idée du problème, j'ai vérifié les options et cela est vraiment aléatoire,

Merci beaucoup pour votre aide, 

Capture d’écran 2020-04-02 à 18.01.13.png

Link to comment
Share on other sites

Bonjour,

merci de corriger le titre de votre topic histoire de faire l’effort de mettre toutes les lettres disponible pour que les gens qui savent lire puisse vous lire.

sinon, changez de séparateur en mettant un . si la , ne fonctionne pas, ou l’inverse si nécessaire.

  • Like 1
Link to comment
Share on other sites

  • lisa changed the title to PROBLEME PRIX ACHAT
  • 3 months later...

Salut,

Je constate un problème similaire en 1.7.5.1 qui va pouvoir t'éclairer :

Mon prix d'achat est de 1,23€ et s'affiche bien sur l’édition de la fiche produit tel quel avec une virgule, mais lorsque je saisie le prix et que j’enlève le focus du champ il me le renomme avec un "." à la place de la virgule et cela fonctionne très bien.

En revanche, lorsque je ne fais que modifier le produit sans toucher au prix d'achat (donc dans la div hidden le prix est avec la virgule) et que j'enregistre ça tronque au niveau de la virgule car il attend un point.

EDIT : Visiblement cela n'impacte que le prix d'achat rentré dans les attributs du produit.

Edited by HeineFR
precision version + seulement sur attributs (see edit history)
Link to comment
Share on other sites

Je m'auto répond sur les différents sujets ou j'ai demandé des explications après de plus amples recherches et différentes pistes trouvées voici ce qu'il faut savoir :

A la sortie de la V1.7 ils ont introduit les décimales avec des virgules pour le BO en français qui posaient de gros problèmes aux attributs produit pour :

le prix d'achat, l'impact sur le prix, l'impact sur le poids, l'impact sur le prix unitaire

Ce problème se présente lorsque l'on modifie la fiche produit sans toucher aux prix existants qui sont pré-remplis dans le champ avec une virgule, si on ne les modifie pas le formulaire va être envoyé avec la virgule et va être tronqué à l'entier.

Ce problème a été partiellement solutionné dans les versions ultérieures avec l'ajout d'une fonction "floatParser".

En revanche, dans la version 1.7.5.1 que j'utilise le problème existe toujours pour le prix d'achat des produits !

J'ai donc modifié ce fichier : /src/PrestaShopBundle/Model/Product/AdminModelAdapter.php

et on aperçois ligne 326 les lignes suivantes :

            $form_data['combinations'][$k]['attribute_price'] = abs(
                $floatParser->fromString($combination['attribute_price'])
            );
            $form_data['combinations'][$k]['attribute_weight'] = abs(
                $floatParser->fromString($combination['attribute_weight'])
            );
            $form_data['combinations'][$k]['attribute_unity'] = abs(
                $floatParser->fromString($combination['attribute_unity'])
            );

J'ai donc rajouté juste au dessus les lignes suivantes pour effectuer la même opération sur le prix d'achat des attributs :

            $form_data['combinations'][$k]['attribute_wholesale_price'] = abs(
                $floatParser->fromString($combination['attribute_wholesale_price'])
            );

Pour les version antérieures qui n'ont pas la fonction de floatParser c'est cette modification qui m'a mis la puce à l'oreille :

Quote

Pour corriger cela, j'ai remplacé la ligne 265 du fichier : /src/PrestaShopBundle/Model/Product/AdminModelAdapter.php

$form_data['combinations'][$k]['attribute_price'] = abs($combination['attribute_price']);

par :

$form_data['combinations'][$k]['attribute_price'] = abs(str_replace(',', '.', $combination['attribute_price']));

Notez que la modification citée concerne uniquement l'impact sur le prix de l'attribut, il faut donc effectuer le correctif aux autres variables comme le prix d'achat.

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...