Jump to content

Problème prix et TVA lors d'un import CSV


Recommended Posts

Bonjour à tous,

Je sais que la question de l'import est abordée régulièrement sur le forum, mais je n'arrive pas à trouver la solution à mon problème et je viens de perdre une journée la dessus...

J'arrive à importer tout correctement, sauf les prix. Si j'importe le prix TTC avec le taux TVA à 19.6 il me dit qu'il ne peut pas calculer le HT (ça fait plus de 6 chiffres après la virgule).. Après avoir vu d'autres sujets sur ça, j'ai fait comme indiqué ailleurs sur le forum, j'ai fait le calcul du HT avec 6 chiffres après la virgule, mais là nouveau problème :

Mon prix HT : 1.25418
Ma TVA : 19.600
Dans prestashop après import ça donne:
Prix HT : 1.00
TVA : 19.000
Prix TTC : 1.19

J'ai tester plein de format différents (19,6 / 19.6 / 19.600) pour la TVA et c'est toujours la même chose...

Chose étonnante, même si le taux de TVA est mauvais ça devrait quand même me prendre un prix HT correct... j'ai tester en ne prenant pas en compte la TVA et c'est pareil sauf que j'ai 1.00 partout..

Si quelques avait une idée la dessus... Je joints mon fichier CSV si ça peut aider..

NB: Je suis sous la Version 1.3.2.3 de Prestashop

Merci d'avance pour votre aide

import-produits-cat97.csv

Link to comment
Share on other sites

Peut-être en enlevant les guillemets autour des prix et des TVA ?

"Ref internet";"Nom";"PRIX HT";"Image";"CATEGORIE";"TVA"
"R001";"Produit1";"1.25418";"../import/53470.jpg";97;"19.600"


devient :

"Ref internet";"Nom";"PRIX HT";"Image";"CATEGORIE";"TVA"
"R001";"Produit1";1.25418;"../import/53470.jpg";97;19.600

Link to comment
Share on other sites

Bonjour,

Même problème, il semble que la requête qui recherche le bon ID de taxe pour l'affecter au produit soit du type "WHERE rate='19.6' alors que la valeur en base est 19.600...
De mon côté, j'ai forcé la TVA dans le script d'import : $product->id_tax = 1;

Pas l'idéal, mais au moins ca fonctionne...!

Link to comment
Share on other sites

  • 1 month later...

bonjour, eh bien moi qui suis adepte du *.csv depuis la mise à jour c'est le bo..re..de...le mon fichier d'origine modèle csv qui fonctionnait très bien ne fonctionne plus du tout & me sort des prix & des tva complètement fausse !

Si vous avez une solution ... je suis preneur, sinon pour le souci de tva ou faut il ajouter $product->id_tax = 1; ?

Link to comment
Share on other sites

Bonjour,

Il y a un bug sur cette version de Prestashop, je rencontre aussi pas mal de problèmes sur les tarifs à virgules...
Pour "$product->id_tax=", je l'ai placé dans mon /admin/tabs/AdminImport.php" modifié, au niveau de la fonction "ProductImport", au niveau de :

// Find id_tax corresponding to given values for product taxe
if (isset($product->tax_rate))
{
//$product->id_tax = intval(Tax::getTaxIdByRate(floatval($product->tax_rate)));
// On force la TVA
$product->id_tax = 1;
}

Mais ca reste du bricolage... la 1.4 semble mieux à ce niveau là, mais pour l'instant c'est une version de développement

Link to comment
Share on other sites

Eh bien en attendant la 1.4 (stable) je te remercie pour la TVA, il est vrai que les chiffres à virgules ne fonctionnent pas non plus car quant j'importe un tarif TTC ou HT de 99.99 cela importe 99.00 & cela pour tout les chiffres à virgules...

Link to comment
Share on other sites

Eh bien en attendant la 1.4 (stable) je te remercie pour la TVA, il est vrai que les chiffres à virgules ne fonctionnent pas non plus car quant j'importe un tarif TTC ou HT de 99.99 cela importe 99.00 & cela pour tout les chiffres à virgules...


Au niveau des calculs, peut-être (pas encore testé) mais pour ce qui est de l'affichage de la liste de champs importables, ça reste figé sur la liste liée aux catégories. C'est pareil, chez vous ?

Question subsidiaire : qqun a-t-il essayé de ramener tous les calculs sur 2 décimales (modifs base de données avec bien sûr) et de voir ce qui se passait quant à l'exactitude des calculs ?
Link to comment
Share on other sites

Eh bien pour l'instant non je ne suis pas encore assez calé pour faire cette modif mais en tout cas j'ai essayé toutes les solutions possible d'ailleur j'ai gardé le même fichier CSV que pour la version antérieur de Prestashop mais cela s'avère na pas fonctionner.
Les valeurs des champs Prix TTC ne fonctionne pas & mes prix s'arrondisse à la decimale inférieure.
ex : si j'importe 6.99 € ou 6,99 € cela va m'importer 6.00.
pour palier à cela je n'importe plus les prix TTC mais HT & prestashop y ajoute la TVA le seul hic c'est qu'il m'arrondi aussi les prix HT à la decimale inférieure... mais bon avec la tva cela fonctionne...

Si quelqu'un à une solution... je suis preneur.

Merci

Link to comment
Share on other sites

Pour ma part, j'ai du supprimer une paire de fonctions "floatval" utilisées au moment de l'ajout des infos en base... mais je ne sais pas pourquoi elles posaient problème. Toujours est-il que sans ces fonctions (et en faisant un certain nombre de str_replace avec les "," remplacées par des ".", ca passe.. mais on bricole

Link to comment
Share on other sites

  • 2 weeks later...

Je viens d'essayer avec la 1.3.3.0 et si tu passes ça dans /admin/tabs/AdminImport ligne 535, ça fonctionne impec pour ceux qui ont aussi de la 5.5 comme moi.

// Find id_tax corresponding to given values for product taxe
if (isset($product->tax_rate))
$product->id_tax = ($product->tax_rate == '19') ? '1' : '2';

Ca évite de taper plus avant dans le code et de modifier la classe. C'est du Q&D;mais en attendant une 1.4 qui fonctionne ...

C'est vraiment calamiteux ces histoires d'import et de calcul des prix. Incompréhensible pour un environnement de ce niveau. Si encore ça demandait des formules alambiquées, on comprendrait, mais là ...

Link to comment
Share on other sites

  • 1 month later...

Bonjour,

Bon j'ai tout essayé, je crois que je vais m'arracher les cheveux
Si je met un taux de TVA, le site me crée une nouvelle TVA à 19,00% (donc les prix sont faux)
Si je met pas de taux de TVA j'ai... pas de taux de TVA (normal quoi)

J'ai essayé de modifier le fichier import mais ca change rien... Quelqu'un peu m'aider ? parce que j'ai déjà plus beaucoup de cheveux et j'aimerais garder ceux qui reste :)

Si quelqu'un a une méthode et peux me l'expliquer je suis preneur, vu la taille de mon catalogue je me vois franchement pas le faire a la main.

Link to comment
Share on other sites

Voilà ce que j'ai dans /admin/tabs/adminimport.php

           // Find id_tax corresponding to given values for product taxe
           if (isset($product->tax_rate))
               $product->id_tax = ($product->tax_rate == '19.60') ? '1' : '2';



Bien entendu, il faut que tu aies 19.60 dans ton champ TVA et non 19,60 (encore que normalement il fait un str_replace sur les ',' voir

private static function getPrice($field) 


dans le même fichier.

J'ai importé 23000 références sans erreur de prix (liée à la TVA s'entend).

Link to comment
Share on other sites

  • 2 weeks later...

J'ai les mêmes problèmes sur la 1.3.6, et en plus impossible d'importer les images.

C'est vraiment pénible, d'une version à l'autre ce module d'import marche ou pas, surtout que le système d'import est censé avoir été "perfectionné".

Est-ce que d'autres ont rencontré ce problème sur la 1.3.6 ??

Link to comment
Share on other sites

  • 2 months later...

Quelqu'un aurait-il trouvé la solution pour la v1.3.6 de prestashop?

J'ai essayé de remplacer le bout de code mais j'ai toujours le même probleme.

PS: le prix que j'entre est en TTC. Est-ce la cause?

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