|
|
|
конвертация валют
|
|||
|---|---|---|---|
|
#18+
sameuserВопрос: как следует подойти к решению вопроса об указании курса данной сделки? Что должно быть вписано в поле "курс"? То, что предписывает налоговый кодекс. Иначе как только бизнес перестанет быть сферическим, Вас загонят туда, где и Ходорковский не бывал. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.04.2016, 21:53 |
|
||
|
конвертация валют
|
|||
|---|---|---|---|
|
#18+
Dimitry Sibiryakov, интересует ответ на вопрос с точки зрения технической реализации в первую очередь. :) В дополнение - в данном случае суммы совершенно не сопоставимы... ) С суммами транзакций вышеназванного господина) Речь о выкупе товаров с онлайн-магазинов вроде ебей и т.п., тут большим цифрам браться неоткуда.. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.04.2016, 22:01 |
|
||
|
конвертация валют
|
|||
|---|---|---|---|
|
#18+
sameuserDimitry Sibiryakov, интересует ответ на вопрос с точки зрения технической реализации в первую очередь. :) В дополнение - в данном случае суммы совершенно не сопоставимы... ) С суммами транзакций вышеназванного господина) Речь о выкупе товаров с онлайн-магазинов вроде ебей и т.п., тут большим цифрам браться неоткуда.. Верно тебе ответили. Курс - свойство конвертации. У покупки курса нет!! Единственное, что у меня большие сомнения в том что вы реально меняете клиентские рубли на валюту до оплаты за товар. То есть бизнес-процесс у вас скорее всего неверно описан, и на счету у клиента таки рубли висят. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.04.2016, 12:14 |
|
||
|
конвертация валют
|
|||
|---|---|---|---|
|
#18+
Кот Матроскинatrsameuser, Я думаю, проблема из-за того, что курс не должен быть атрибутом сущности "сделка" - Ваш пример это адекватно показывает. Т.е. есть операция "конвертация" - у нее есть курс, и есть операция "сделка" - она происходит уже в целевой валюте, и курса у нее нет. В таком случае теряется определенная точность.. Хотелось бы, конечно, контролировать данные полностью. Мысль вчера пришла. Возможно, не самая лучшая.. Возможно я что-то упустил. Но все же хотел обсудить.. Если.. Создать таблицу принадлежности транзакций примерно такой структуры: Код: html 1. 2. 3. 4. 5. 6. При осуществлении фактической оплаты товаров оператором напротив каждой оплачиваемой товарной позиции расположить выпадающий список с возможностью множественного селекта.. Состав списка - транзакции данного конкретного клиента.. Код: html 1. 2. 3. 4. 5. 6. Что-то вроде того. Конечно, подобный механизм будет оправдан в первую очередь для позиций со смешанным курсом.. В остальных случаях (коих, слава богу, большинство) выпадающий список транзакций будет содержать практически всегда одну транзакцию, а не 2, как в случае с тем клиентом, который решил отложить денежку. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.04.2016, 13:19 |
|
||
|
конвертация валют
|
|||
|---|---|---|---|
|
#18+
авторЕдинственное, что у меня большие сомнения в том что вы реально меняете клиентские рубли на валюту до оплаты за товар. К счастью или к сожалению, именно так и выстроен бизнес-процесс. Переделывание не представляется возможным (пока что). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.04.2016, 13:30 |
|
||
|
конвертация валют
|
|||
|---|---|---|---|
|
#18+
[quot Если... Что-то вроде того..[/quot] Этот изобретенный велосипед называется партионный учет себестоимости, класически бывает по методу FIFO или LIFO и совершенно не нужен вам!!!! Контролирость данные полностью - это как раз и есть введение операции "конвертация" ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.04.2016, 14:24 |
|
||
|
конвертация валют
|
|||
|---|---|---|---|
|
#18+
sameuserавторЕдинственное, что у меня большие сомнения в том что вы реально меняете клиентские рубли на валюту до оплаты за товар. К счастью или к сожалению, именно так и выстроен бизнес-процесс. Переделывание не представляется возможным (пока что). Как так?? Меняются рубли на валюту сразу при зачислении?? Ну так вообще какие проблемы?? Тогда весь учет и баланс клиента ведите и отображайте ему в валюте!!! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.04.2016, 14:26 |
|
||
|
конвертация валют
|
|||
|---|---|---|---|
|
#18+
авторМеняются рубли на валюту сразу при зачислении?? Не сразу, процесс требует время. За которое, кстати, иногда курс меняется. Это другая головная боль.. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.04.2016, 01:29 |
|
||
|
конвертация валют
|
|||
|---|---|---|---|
|
#18+
sameuserавторМеняются рубли на валюту сразу при зачислении?? Не сразу, процесс требует время. За которое, кстати, иногда курс меняется. Это другая головная боль.. тем более в операцциях клиент должен видеть операцию "конвертации" - с реальной датой этой конвертации. Тогда у него не будет вопроса "шозанах". ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.04.2016, 10:37 |
|
||
|
конвертация валют
|
|||
|---|---|---|---|
|
#18+
автортем более в операцциях клиент должен видеть операцию "конвертации" - с реальной датой этой конвертации. Тогда у него не будет вопроса "шозанах". Разумеется. Предполагается детальный учет транзакций обмена валюты с указанием даты, суммы списания рублей, суммы зачисления долларов, курса обмена (ожидаемого и фактического, по которому состоялась процедура обмена). авторЭтот изобретенный велосипед называется партионный учет себестоимости, класически бывает по методу FIFO или LIFO и совершенно не нужен вам!!!! Очень бы не хотелось отказываться от полной детализации, так скажем. Про партионный учет почитал немного, спасибо. Знал бы раньше - не потратил 2 дня на размышления. Изобретение велосипедов отнимает время.. Потому, наверное, и решил на форум зайти )) Бывает, что заказ клиента может состоять всего из одной позиции (одной строки в личном кабинете). Например, какая-то дорогая вещь или же наоборот, множество мелких и дешевых (1 action-камера или 20 пар перчаток). И может быть так (я на предыдущей странице акцентировал внимание), что эта самая одна позиция для своей оплаты будет требовать доллары не с одной, а сразу с двух транзакций по обмену валюты (напр., если от предыдущих покупок осталось 100 долларов на счете, клиент докидывает еще 100 (совсем по другому курсу), а затем оплачивает одну позицию на 200 долларов. > Верно тебе ответили. Курс - свойство конвертации. У покупки курса нет!! Клиент спросит: скажи мне, любезный, во сколько мне обошлась вот эта вот вещь, когда я ее покупал, в рублях? Какие есть варианты? а) отказаться и забить - не хотелось бы.. б) считать по действовавшему на ту дату курсу обмена валют - возможны неточности (см. пример с оставшимися 100$ на счете) в) считать по курсу обмена ближайшей к дате покупки товара транзакции - сработает в большинстве случаев (но не во всех, см. тот же пример) г) ввести партионный учет - сложновато, лишний код, лишняя нагрузка на оператора, не исключены ошибки того же оператора Причем если 1 раз у клиента остались средства с предыдущих покупок, то с большой долей вероятности в будущем в составе баланса также будут присутствовать доллары с разных транзакций (по 1-10 долларов или по несколько центов). Ну и возможность изменения курсов за время, требуемое для обмена, также подкидывает хаотичности процессу. Подобные случаи "смешанного" баланса, я так думаю, будут наблюдаться гораздо чаще, чем казалось изначально. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.04.2016, 21:52 |
|
||
|
конвертация валют
|
|||
|---|---|---|---|
|
#18+
sameuserКлиент спросит: скажи мне, любезный, во сколько мне обошлась вот эта вот вещь, когда я ее покупал, в рублях? Какие есть варианты? а) отказаться и забить - не хотелось бы.. б) считать по действовавшему на ту дату курсу обмена валют - возможны неточности (см. пример с оставшимися 100$ на счете) в) считать по курсу обмена ближайшей к дате покупки товара транзакции - сработает в большинстве случаев (но не во всех, см. тот же пример) г) ввести партионный учет - сложновато, лишний код, лишняя нагрузка на оператора, не исключены ошибки того же оператора Нагрузка на оператора не нужна - Иван-Дурак упомянул же, что партионный учет обычно реализуется по методу LIFO или FIFO. Спрашивать оператора, какие именно доллары тратятся на покупку, купленные по 30 рублей или по 80 - бессмысленно, клиенту это неважно (если он не юрлицо - но тогда он эти расчеты ведет сам). Программа вполне может это решать сама, в соответствии с выбранной логикой учета. Но вообще мультивалютный учет - непростая вещь и для нужд обычного инет-магазина довольно избыточная. Вот Вы хотите сообщать клиенту, во сколько в рублях ему обойдется покупка. А если клиент скажет "нет, чего-то в рублях выходит дофига - не буду покупать, давайте-ка мне лучше эти рубли назад"? Выйдет неловко. Проблема даже не в технической реализации (она хоть и непростая, но вполне изжеванная) - а в том, что придется прописывать кучу всего в регламенты, в оферту для клиента, чтобы в случае чего успешно решать такие вопросы в судах. Так что на Вашем месте я бы собрал бухгалтера, юриста и директора и спросил у них "А мы все-таки точно хотим вести учет клиентской позиции в нескольких валютах сразу?" ;) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.04.2016, 08:40 |
|
||
|
конвертация валют
|
|||
|---|---|---|---|
|
#18+
sameuserКлиент спросит: скажи мне, любезный, во сколько мне обошлась вот эта вот вещь, когда я ее покупал, в рублях? Какие есть варианты? Правильный вариант только один. Ответить - эта вещь обошлась вам в 100$. Так как мы потратили на нее именно 100$ а не рубли. И эти 100$ взяли из вашего кошелька. А Как и по какому курсу попали 100$ в ваш кошелек - смотрте историю конвертаций. Это самый правильный и честный ответ! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.04.2016, 12:36 |
|
||
|
конвертация валют
|
|||
|---|---|---|---|
|
#18+
Ничего более полезного я придумать не смог по вопросам, разбиравшимся выше. Возьму предложенные способы в работу :) Далее приходится задумываться о хранении записей движения средств (транзакций). Предполагается наличие в системе нескольких внутренних счетов (напр., рублёвый_банк1, рублевый_киви, рублевый_вебмани, долларовый и т.п.) Код: html 1. 2. 3. 4. 5. 6. 7. 8. 9. И tran_from_account, и tran_to_account могут быть null. Если NULL'ом является сущность tran_from_account, то предполагается, что средства поступили извне (ENUM № 1 - пополнение баланса клиентом), а если tran_to_account является типом NULL - то подразумевается вывод средств из системы (ENUM № 3 - возврат денег клиенту, например). Если же и tran_from_account и tran_to_account не являются NULL'ом - то это будет обмен валюты или перевод со счета на счет (ENUM - тип № 2) При таком раскладе в базе отсутствуют сущности, отвечающие за определение направления входа и выхода средств (точнее, поступления и вывода). Вместо них используется NULL, т.к. зачисление может осуществляться разными способами, как и вывод может быть произведен на разные кошельки или счета в разных банках. Была мысль вместо NULL использовать ноль, но тогда бы пришлось создать системный счёт account_id=0, который выступал бы как свалка для описанных выше задач. От этой мысли я отказался. Баланс клиента user_id № 150 в рублях будет считаться примерно так (подсчетом суммы поступлений и последующим вычитанием из нее всех возможных расходов).. Я, возможно,чуть напутал с синтаксисом, но .. Суть передать смогу. :) SELECT ( SUM(tran_amount) in transaction_table WHERE tran_owner=150 AND tran_type=1 AND tran_from_account IS NULL ) - // выше вычислили сумму всех поступлений ......SELECT ( SUM(tran_amount) in tran_table WHERE tran_owner=150 AND tran_type=2 AND tran_from_account IS NOT NULL AND tran_to_account IS NOT NULL ) - ......// вычитаем сумму всех списаний по обмену валюты ............SELECT ( SUM(tran_amount) in tran_table WHERE tran_owner=150 AND tran_type=3 AND tran_to_account IS NULL ) ............// вычитаем сумму всех выплат клиенту (возвратов средств) Возможно, конечно, удастся ограничиться в запросах выше лишь указанием типа транзакций (tran_type) без последующей логической проверки (напр., AND tran_from_account IS NOT NULL AND tran_to_account IS NOT NULL ). Я пока еще не могу точно определить, потребуются ли эти условия для обеспечения целостности расчетов, исключая возможность ошибки где-то.. Или же послужат лишней нагрузкой. Вероятно, ответ придет позднее (в процессе дальнейшей разработки и проектировки). Готов к критике. :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.04.2016, 12:18 |
|
||
|
конвертация валют
|
|||
|---|---|---|---|
|
#18+
Будем считать, что возражений не поступило. И на том спасибо! :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.04.2016, 01:30 |
|
||
|
конвертация валют
|
|||
|---|---|---|---|
|
#18+
У тебя на три типа операции - три селекта. А когда типов будет 100 ??? Баланс должен собиратьс простой суммой всех! операций по нему. Операции себе заведи с + приход, с - уход. То есть сумируешь ВСЕ по счету, а там уже автоматом приходы прибавляются, уходы отнимаются. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.04.2016, 09:37 |
|
||
|
конвертация валют
|
|||
|---|---|---|---|
|
#18+
А, да. Этот велосипед называется "двойная запись", тоже давно изобретен, погугли ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.04.2016, 09:39 |
|
||
|
конвертация валют
|
|||
|---|---|---|---|
|
#18+
авторУ тебя на три типа операции - три селекта. А когда типов будет 100 ??? Баланс должен собиратьс простой суммой всех! операций по нему. Операции себе заведи с + приход, с - уход. То есть сумируешь ВСЕ по счету, а там уже автоматом приходы прибавляются, уходы отнимаются. Спасибо за ваш отзыв. Думаю, едва ли этих типов наберется более 5-6... И т.к. биллинг бивалютный, одним селектом все равно, видимо, не отделаешься.. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.04.2016, 00:46 |
|
||
|
конвертация валют
|
|||
|---|---|---|---|
|
#18+
Забыл добавить - валютный баланс тоже предполагается подсчитывать именно как сумму поступлений на валютный счет от клиента ID=XXX, за вычетом всех списаний и за вычетом всех товаров. Ибо сумма за каждый конкретный товар собирается из множества мелких расходов вроде страховки, цен на доставку по регионам, разных комиссий и прочая-прочая, что невозможно собрать в единый тарифный план или еще как-то структурировать (да и не нужно оно, т.к. значения всех этих страховок, доставок и пр. регулярно меняются на лету). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.04.2016, 14:30 |
|
||
|
конвертация валют
|
|||
|---|---|---|---|
|
#18+
mini.weblab, а каким образом привязать конвертацию к ежедневному изменению курса доллара? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.06.2016, 12:57 |
|
||
|
конвертация валют
|
|||
|---|---|---|---|
|
#18+
Дмитрий Рюриковmini.weblab, а каким образом привязать конвертацию к ежедневному изменению курса доллара? вычеркните слово "изменению", добавьте слово "дату" перед словом "конвертации" перечитайте вопрос и поймете ответ ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.06.2016, 14:01 |
|
||
|
конвертация валют
|
|||
|---|---|---|---|
|
#18+
Дмитрий Рюриков, 1) можно использовать формулу, т.е на основе имеющихся данных пересчитать сколько стоит доллар (или любая другая интересующая валюта) в различных валютах 2) если вы будете работать с долларами, то вам имеет смысл хранить стоимость доллара (а не евро) в различных валютах 3) если вы работаете с форексом, то вам схема не подойдет: нужно рассматривать не валюты, а валютные пары 4) приведенная схема использовалась для конкретной уже работающей базы, поэтому она выглядит не совсем стандартно, это нужно учитывать ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.06.2016, 14:39 |
|
||
|
|

start [/forum/topic.php?fid=32&msg=39207927&tid=1540331]: |
0ms |
get settings: |
8ms |
get forum list: |
13ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
44ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
52ms |
get tp. blocked users: |
1ms |
| others: | 14ms |
| total: | 149ms |

| 0 / 0 |

Извините, этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
... ля, ля, ля ...