Категории

[FAQ] Часто задаваемые вопросы и ответы

Проблемы и решения

Ошибки и исправления

Общие вопросы

Расширения

Установка и обновление

Модули

Шаблоны

Локализация интерфейса

Коммерческие предложения

Учимся бизнесу

Бизнес книги

Поисковая оптимизация (SEO)

Магазины на ShopOS

Хостинг для ShopOS

Предложения и пожелания

Курилка

Цены в разных валютах на разные товары

Добрый день всем!

Собственно сабж, цены в разных валютах на разные товары, есть такая возможность?
В зависимости от производителя, что бы менялась валюта... Т.е. при закупке товара для продажи в Европе, валюта евро, при закупке в Канаде - в долларах?
Заранее благодарен!


нет


Евгений, планируется ли добавление этой возможности? И если да, то когда? Клиенты грызут: половина цен на товары должна измеряться в одной валюте, половина - в другой, как только происходит скачок курса, нужно обновлять цены на тысячи наименований, потому что валюта цены товара часто не совпадает с дефолтной(Например, товар стоит 30евро, курс на дату добавления товара-45руб., валюта по дефолту - рубли. Клиент указывает цену 1350руб. На следующий день скачок курса, и евро стоит 46 рублей. Приходится вручную править цены, в данном случае на 1380руб.). Возможность привязки к конкретному товару конкретной валюты существенно упростило бы администрирование вашего магазина.


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


Установите курс доллара и всё. Курс доллара, евро и прочее. Зачем править в ручную?


Нужна привязка цены товара к валюте при заведении этого товара, чтобы колебания курса на нее не влияли.

Еще раз объясняю на примере. Мы хотим продать товар по цене 10 евро, а в магазине большинство товаров уже в рублях. Что нам делать? Выбираем ту валюту, в которой большинство товаров, то есть рубли, по умолчанию. Остальные товары(меньшинство) переводим вручную в валюту по умолчанию(допустим, в момент добавления товара 1евро=45рублей, тогда новый товар будет выставлен по цене 450рублей=45*10), так как, насколько я понял, при добавлении товара указывается лишь количественная составляющая цены, а валюта для всего магазина одна.

Проходит неделя. 1евро=40рублей. И тот товар, который должен оставаться по цене 10 евро, неожиданно начинает стоить 11,25 евро=450рублей/40 (хотя фактически его цена не изменилась, ведь она не привязана к рублю!). В идеале должна была измениться его цена в рублях, то есть стать 400рублей


выставить валюты по умолчанию - евро. и вводить в евро

а в магазине выводить в рублях по курсу


вводить один товар в евро. и чтобы выводилось в евро. а другой в рублях и чтобы выводился в рублях - нельзя.


Да я в курсе, то нельзя. Мы же говорим о расширении возможностей магазина. Или это сделать нереально, по вашему?


все можно сделать.

в таблице os_products

добавить доп. столбцы для сохранения цен для каждой валюты.

и переписать все скрипты отвечающие за редактирование и вывод цен товаров.


Гениально, сам бы я никогда не догадался ;D. Скрипт уже почти готов - исправляю мелкие баги. Как говорится, проще сделать самому, чем объяснить другим, что нужно делать.



Гениально, сам бы я никогда не догадался ;D. Скрипт уже почти готов - исправляю мелкие баги. Как говорится, проще сделать самому, чем объяснить другим, что нужно делать.


ну так зачем тогда спрашивать?

двиг не поддерживает. все доп. функции так и добавляются


У меня пришла в голову идея решения проблемы, что бы задействовать какоето доп поле в таблице товаров, что бы указать валюту... Или вырубить чистку значений цены что бы в поле цена можно было вписать 5000R или E,U и всё.., а дальше на карточке товара выводить... Но вот с корзиной и пр, заморачиваться не хочу)))
Принципиально не хочу вносить изменения в двиг вне шаблона.. Ведь и в шаблоне можно напрямую дёргать данные из таблицы и пр))) Не извращенец, а влом разбираться с smarty и годе двига))
Может у кого есть интересное решение?


Евгений прав... к моему/нашему всеобщему сожалению... "всем давать - поломается кровать" - нас много, а он один...
Мне вот тоже мультивалютность нужна - придется делать как сказано раннее - добавлять столбцы и модифицировать движок - это единственно правильное решение - на одном шаблоне далеко не уедешь  :'(
Но... как вариант http://www.shopos.ru/forum/index.php?topic=971.0


Если нужен совет, то способ, предложенный Евгением, не самый оптимальный. Я сделал следующим образом: в os_products добавил 1 столбец, в который сохраняется id валюты, в которой занесен товар. Соответственно, в панели администрирования модифицировал форму добавления товара(добавил выпадающий список с доступными валютами).

Далее. Класс Price. Там модифицировать функцию CalculateCurr() следующим образом:

function CalculateCurr($price,$curr="RUR") {
if ($this->currencies>0) $price = $price/($this->currencies);
if (STORE_ROUND==1) {$price = (ceil($price));}
elseif ((STORE_ROUND==2) && ($price%10>0)) {$price = (ceil($price/10))*10;}
elseif ((STORE_ROUND==3) && ($price%100>0)) {$price = (ceil($price/100))*100;}
elseif ((STORE_ROUND==4) && ($price%1000>0)) {$price = (ceil($price/1000))*1000;}
return $price;
}

STORE_ROUND - это константа, отвечающая за округление, рекомендую добавить в настройки магазина, чтобы цены в магазине были адекватными. Значения 1,2,3,4 - соответственно округление в большую сторону до 1,10,100,1000 рублей.

И наконец, модифицировать admin/includes/modules/categories_view.php, чтобы нормально отображались валюты в админке. Вот и все.


Помогите реализовать это!!!
Уже надоело каждый раз при изменении курса все цены вводить вручную.


Люди отзовитесь, неужеле никто не может помочь. блин в комерческие предложения тоже написал. все молчат. наверно самому придется досконально изучать php и тд и где-то через год реализую)))


Поищите разработчика на фриланс сайтах, что ждать то?


Написал уже на двух сайтах - тишина
Можно это как-то через импорт(excel) решить?


Там не хило надо будет править. По этому возиться может не хотят))


та раньше человек писал что реализовал. мне б хотя б просто товар в разной валюте вводить и все, там бы я уже курс прописал и делов то.


так есть же блок смены валюты. Чем не устраивает такой вариант?


Описываю
товар закупается в разных валютах(грн доллар и евро) магазин настроен выводить всё в грн и валюта по умолчанию грн.
Каждый раз при колебаниях курса приходиться всё это в ручную корректировать.
Если б была возможность ввести товар в разных валютах - настроил бы валюту по умолчанию, допустим евро, к ней курс гривны и доллара, затем в магазе настроил бы Переключение на валюту текущего языка.
Таким образом мне приходилось бы менять только курс грн и дол. относительк евро.



Описываю
товар закупается в разных валютах(грн доллар и евро) магазин настроен выводить всё в грн и валюта по умолчанию грн.
Каждый раз при колебаниях курса приходиться всё это в ручную корректировать.

Что именно приходится корректировать?


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

Нет такого понятия - "валюту текущего языка".

Крайне сумбурно написано. Сами-то понимаете, что хотите добиться?

Вопрос совсем не такой простой, как кажется.  Если хотите сделать по-своему, надо для начала представлять, что желаете, и  хоть немного понимать механизм.


Приходиться коректировать цены, так они заводятся в магазин в гривне, соответственно если товар стоит 500 евро а курс 10 гр за 1 евро то я пересчитываю это в ручную и ввожу в уже в гривне 5000 грн курс меняется , допустим становится 10,5 то стоимость уже должна быть  500х10,5=5250 грн. В это же время есть товары которые закупаются в баксах и курс не меняется, то эти товары как были 400$x8=3200грн  так и остаются.
А теперь представте у меня 500 товаров из них 200 закупаютсяв евро, 200 в долларах, 100 в гривнах и каждый раз при изменении курса(толи евро, толи бакса) мне вручную нужно корректировать цену на определенную группу товара



Нет такого понятия - "валюту текущего языка".




Настройки->основные->мой магазин и там есть Переключение на валюту текущего языка

Если б было всё в евро то проблем бы небыло. Выставил в магазине евро как основная валюта и настроил бы курс гривны. Ставим Переключение на валюту текущего языка и все магазин выводит все в гривне согласно курса



Приходиться коректировать цены, так они заводятся в магазин в гривне, соответственно если товар стоит 500 евро а курс 10 гр за 1 евро то я пересчитываю это в ручную и ввожу в уже в гривне 5000 грн курс меняется , допустим становится 10,5 то стоимость уже должна быть  500х10,5=5250 грн.


Так что хотите?  Чтобы при вводе цены было несколько полей (по одному для каждой валюты), и достаточно было бы  заполнять только одно поле. Так?


А теперь представте у меня 500 товаров из них 200 закупаютсяв евро, 200 в долларах, 100 в гривнах и каждый раз при изменении курса(толи евро, толи бакса) мне вручную нужно корректировать цену на определенную группу товара


Или что-то корректировать не на товар, а на ГРУППУ?  И что понимается под группой?


Настройки->основные->мой магазин и там есть Переключение на валюту текущего языка


Да, ошибся, есть такое.


Так что хотите?  Чтобы при вводе цены было несколько полей (по одному для каждой валюты), и достаточно было бы  заполнять только одно поле. Так?

можно и так но проще было бы рядом с полем цена выпадающий список, выбрал валюту и все.
Как было описано чуть выше ,
в os_products добавил 1 столбец, в который сохраняется id валюты, в которой занесен товар. Соответственно, в панели администрирования модифицировал форму добавления товара(добавил выпадающий список с доступными валютами).

Далее. Класс Price. Там модифицировать функцию CalculateCurr()

И наконец, модифицировать admin/includes/modules/categories_view.php, чтобы нормально отображались валюты в админке. Вот и все.


Или что-то корректировать не на товар, а на ГРУППУ?  И что понимается под группой?


Коректировать приходится ту группу товаров, которые закупаются например в евро, если изменился курс евро или товары , которые закупаются в долларах, если изменился курс доллара.



Коректировать приходится ту группу товаров, которые закупаются например в евро, если изменился курс евро или товары , которые закупаются в долларах, если изменился курс доллара.


Корректировать  каждый товар отдельно?

Понял так:
1.  При вводе цены указывается  валюта  и сама цену в этой валюте.
2.  Для каждого товара система должна помнить валюту, в которой введена была цена, и саму цену в этой валюте.
3.  Цены  в других валютах меняются  при изменении курсов.

В скольких местах так цены вводить надо ? Только основная цена товара, или еще где (скидки, например, ... ).



Да, система должна знать в какой валюте введен товар и согласно курсу переводить в гривны.
Пример: курс 1 доллар = 8 грн, 1 евро = 11 грн.
один товар введен в евро и стоимость его 500 евро, соответственно в магазине выводится цена 5500грн
другой товар введен в долларах стоимость 100 долларов в магазине выводиться 800 грн
если товар введен в гривне 500грн то выводится 500 грн.
О скидках и т.п. это уже другой разговор, хотя бы так как я описал реализовать.


Источник



Copyright ShopOS