Jump to content

Настройка нескольких валют


Recommended Posts

Всем доброго дня.

Вопрос по валютам и изменении ее курсов.

Presta 1.6.1.6 & Warehouse 3.8.2

 

У меня 3 валюты post-1122210-0-38454400-1472460320_thumb.png , доллар по дефолту (т.к. большинство товара долларовые) и установлен модуль мультивалют post-1122210-0-69979700-1472460322_thumb.png . Цены товаров задавались соответственно - долларовые в долларах, а евровые - в евро.

В связи с изменением курсов - обновил курсы - и теперь неправильно выводятся цены товаров, которые задавались в евро. Т.е., если цена товара была например 10 евро (и задавалась 10 евро), то теперь выводится 9,64 евро. Но если зайти в этот товар, в Цены - цена стоит 10 евро, как и задавалась ранее. Достаточно просто его сохранить - и тогда выводит верно. Вот скрины двух товаров по 10 евро после изменения курсов валют (слева на скринах пере-сохраненный товар).

в евро post-1122210-0-24824300-1472460322_thumb.png и в долларах post-1122210-0-37493600-1472460321_thumb.png

Может что-то криво настроено/работает?

Долларовый товар вроде нормально считает и выводит.

Спасибо.

 

 

 

Share this post


Link to post
Share on other sites

Кеш чистил, все товары массово отключал/включал, не помогает.

В БД делались запросы

UPDATE `ps_product` SET `price` = `price`
UPDATE `ps_product_shop` SET `price` = `price`
UPDATE `ps_product_attribute` SET `price` = `price`
UPDATE `ps_product_attribute_shop` SET `price` = `price`

тоже не помогает. Помогает только ручное пере-сохранение товара на вкладке Цены.

Share this post


Link to post
Share on other sites

Посмотри на налоговые правила для валюты и курс обмена вручную поставь 1:1

Налоги все отключены, в налоговых правилах такого нет. Где еще посмотреть?

 

У Престы есть API и через вэб-сервис можно реализовать UPDATE товаров. Как это практически выглядит?

 

Вот типа такого: http://blog.belvg.com/prestashop-web-services.html

Edited by aleksey_z (see edit history)

Share this post


Link to post
Share on other sites

Update проще сделать SQL-запросом. В настройках валют поставь курс евро 1.00000 относительно основной валюты, потому что  у тебя происходит конвертация относительно курса.

Share this post


Link to post
Share on other sites

Запутался. Если так выставить post-1122210-0-85799000-1472478382_thumb.png

то вывод и в евро post-1122210-0-43115100-1472478384_thumb.png и в долларе post-1122210-0-52102000-1472478383_thumb.png - цифры одинаковые 

 

Попробовал даже евро задать валютой по дефолту, и курсы для гривны и доллара - ни фига, чтоб корректно выводилась цена в разных валютах нужно пере-сохранить товар.

 

P.S. И не просто зайти в товар - если просто открыть товар и нажать сохранить, то тоже ничего не меняется, а нужно зайти во вкладку Цены и ничего не трогая нажать Сохранить. Тогда цена в евро выводится правильная (заданная в евро) и пересчет правильный.

Edited by aleksey_z (see edit history)

Share this post


Link to post
Share on other sites

Странное явление, нужно глянуть в БД таблицы ps_product и ps_product_shop и понять что именно меняется после нажатия кнопки Сохранить... Еще посмотри что в таблице ps_specific_price.

Share this post


Link to post
Share on other sites

В таблице ps_specific_price товары со специфической ценой (со скидкой). post-1122210-0-58647500-1472629192_thumb.png

 

Таблицы ps_product и ps_product_shop - по 563 строк. Как понять, что именно меняется после нажатия кнопки Сохранить?

Может быть в запросе на обновление цен нужно указывать id валюты?

Edited by aleksey_z (see edit history)

Share this post


Link to post
Share on other sites

Тест простой, открываешь таблицы: которые я выше назвал, берешь заведомо тебе известный товар: (например товар с id=175) и копируешь в эксель из этих таблиц все данные. Потом делаешь волшебной кнопкой "Сохранить" обновление цены и снова этот товар смотришь. Нужно сравнить состояние полей таблиц БД до нажатия и после. Возможно это наведет на подсказку.

Можно конечно же внимательно посмотреть что именно делает кнопка "Сохранить" и тогда так же буден понятен механизм работы и скорей всего найдется причина несоответствия цен.

Share this post


Link to post
Share on other sites

Взял для сравнения два товара, недавно добавленных (до изменения курсов), id=555 и id=556, цена одинаковая при их добавлении: выбрана валюта - евро, стоимость 55. После изменения курсов в бэк-офисе цена этих товаров в бэк-офисе, и на фронте сайта (при выборе валюты евро) выводится не 55, а 53 евро. Пересохраняю товар с id=556 из бэк-офиса, теперь он выводится правильно: post-1122210-0-40905100-1472641250_thumb.png, в админке (пересчитан по курсу в доллар, т.к. доллар - по дефолту валюта) post-1122210-0-11669400-1472641249_thumb.png, и в БД (пересчитан по курсу в доллар, т.к. доллар - по дефолту валюта) post-1122210-0-85998200-1472641249_thumb.png.

 

Теперь по пере-сохранению - заметил такое: открываю товар id=556, захожу в Цены - цена стоит верная, а значки валюты - долларовые (хотя выбрана валюта евро) post-1122210-0-12530700-1472641676_thumb.png. Ничего не делаю, жму Сохранить и остаться, товар сохраняется и значки теперь правильные - евро post-1122210-0-83711000-1472641676_thumb.png.

 

Дальше-больше: замечаю, что если снова захожу в этот же товар, он открывается - в левом верхнем углу крутится кружочек-стрелочки, потом перестает. Если подождать пока он перестанет крутиться и нажать вкладку Цены - то опять видим неправильную валюту возле цены (при выбранной евро). post-1122210-0-85712100-1472641250_thumb.png А если не ждать, а сразу после открытия карточки товара нажать вкладку Цены - видим правильно: post-1122210-0-08966500-1472641248_thumb.png

 

Т.е. такое впечатление, что забывается валюта что-ли, и при изменении курса - Престой цифра 55 подразумевается долларов (по дефолту), а не евро (хотя задано) и оперирует с новым курсом.

Share this post


Link to post
Share on other sites

А что за модуль Multi Currency? Странная работа с валютой.... Можно выключить этот модуль и посмотреть на поведение Престы с кросс-курсом 1:1

Share this post


Link to post
Share on other sites

Нет. Просто выводит пересчитанные до деинсталляции модуля 53 и 55 евро в долларах (на скрине выше). При переключении евро - доллар эти цифры одинаковые при post-1122210-0-96043500-1472667656_thumb.png

Share this post


Link to post
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
 Share

×
×
  • Create New...

Important Information

Cookies ensure the smooth running of our services. Using these, you accept the use of cookies. Learn More