Большое спасибо за участие..
Есть еще один подводный камень: При сопоставлении Axapta сравнивает суммы в валюте операции (AmountCur). Если требуется работать в основной валюте - нужно и сопоставлять в ней же. Получается вполне ожидаемый "парадокс":
- Выставляем накладную на 100 USD (3000 RUR) 1-го числа
- Вводим платеж от клиента на 100 USD (3100 RUR) 2-го числа - курс изменился!
- При сопоставлении мы должны:
1. Сопоставить расходную проводку по накладной в валюте компании на 100 USD и 3000 RUR (по приходной проводке остается хвост = 100 RUR, баланс не сходится)
2. Платеж сопоставляем с накладной на 3000 RUR и 100 USD
3. Переоцениваем накладную на дату платежа - рождаем хитрую курсовую разницу на 100 RUR и 0 USD
4. Сопоставляем курсовую разницу с платежом на 100 RUR
По сути, сопоставление в валюте операции выполнится корректно (за счет введения собственной курсовой разницы в валюте операции).
В такой схеме баланс по счету сходится, но решение получается совсем некрасивым. Минусы такие:
1. Появляются проводки, у которых суммы в основной валюте компании - нулевые
2. Необходимо разрабатывать свой механизм сторнирования таких проводок по курсовой разнице для случаев ввода повторных платежей / рассопоставления.
3. Необходимо изменять стандартный механизм сопоставления
4. Печатные формы действительно придется переделывать (с галкой "в основной валюте" экспериментировать бесполезно, суммы получаются кривыми)
Другого решения пока мне найти не удалось.
|