• Ласкаво просимо на Спільнота для обміну досвідом між користувачами програм УкрБланк, УкрСклад, УкрЗарплата.
 

Смена основной валюты

Автор isian1, Квітень 11, 2015, 17:12:42

Попередня тема - Наступна тема

0 Користувачі і 1 Гість дивляться цю тему.

isian1

У нас основная валюта - ГРН, Национальная - ГРН ,
Часть товара 30-40% - в грн (валюта прихода - грн,  валюта расхода - грн)
Часть товар 60-70% - в (валюта прихода - $ , валюта расхода - $
Из-за того что основнаю валюта гривна - отчеты очень условные и неверные
Решили сменить основную валюту на $  - в валютах сменил на долар и в номенклатуре товары которые были в грн - стали в доларе а которые были в доларе поменялись в гривну ?
Вопрос : как в номенклатуре поменять обратно ??? 

isian1

#1
так как валюты меняются на обратные при смене основной валюты (грн на долар а долар на гривну ) надо  скрипт :
если валюта прихода = грн то меняем на долар , а если = долар то меняем на гривну
если валюта расхода = грн то меняем на долар , а если = долар то меняем на гривну
П.С: в скриптах несилен поэтому ничего хорошего и рабочего  самому неудается написать

- этот скрипт меняет по заданому параметру , а как обьединить их , так что бы они применялись вместе???
UPDATE tovar_name SET cena_out_curr_id = 1 WHERE cena_out_curr_id = 0 <- сменить валюту расхода на грн для товаров с расходной валютой ГРН
UPDATE tovar_name SET cena_out_curr_id = 0 WHERE cena_out_curr_id = 1 <--- наоборот
UPDATE tovar_name SET cena_curr_id = 1 WHERE cena_curr_id = 0 <---для приходных цен
UPDATE tovar_name SET cena_curr_id = 0 WHERE cena_curr_id = 1
так как если применять их поочередно то товары будут иметь одинаковый Where

isian1

Несмог ввиду своей некомпетентности в SQL их собрать до кучи , получилось вот так :
UPDATE tovar_name SET cena_curr_id = 1 WHERE cena_out_curr_id = 0  - изм. прих. валюту на ГРН для расходной валюты $
UPDATE tovar_name SET cena_curr_id = 0 WHERE cena_out_curr_id = 1 - изм. прих. валюту на $ для расходной валюты ГРН
UPDATE tovar_name SET cena_out_curr_id = 1 WHERE cena_curr_id = 1 - изм. расх. валюту на ГРН для прих валюты $
UPDATE tovar_name SET cena_out_curr_id = 0 WHERE cena_curr_id = 0 - изм. расх. валюту на $ для прих валюты ГРН

П,С : для тех у кого после смены основной валюты всправочнике "Валюты" , валюты в товарах поменялись местами. может кому пригодится :)

admin

В программе менять основную валюту нельзя, если хотите скриптами сменить, то это можно делать только после "Очистки данных", вот старая тема: http://www.softbalance.com.ua/forum/index.php/topic,400.msg2838.html#msg2838

isian1

почему нельзя ??? И почему после Очистки данных ???
Как я понимаю можно - но данные по продажам , балансы и прочее будет неверно! Тогда почему изменять после очистки ? так как если сразу сделать очистку , то программа внесет остатки в гривнах и дальнейшие отчеты будут исходить от курса на момент очистки, а товар то закупался при разных курсах и уже вбит в доларе ?
Я сделал так :
1) сменил основную валюту с грн. на долар ,
2)так как программа автоматом поменяла в товарах валюту  в обратную (тоесть был заведен товар уже с доларом и вход и оут , а программа при смене основной на долар взяла, да и сменила валюту товара на ГРН!!! хотя спрашивается зачем ???) скриптами описаными выше перевел валюты товаров обратно
3) очистил данные - в результате чего программа внесла товары в своей основной валюте , тоесть доларе , а так как валюта товаров долар то при просчете прибыли я буду видеть реальные цифры!
Или... если что-то я не так понимаю поправьте пожалуйста , только разжуйте для слабоумных...) заранее благодарю