25.02.2009, 11:35 | #1 |
MCP
|
Курсовая разница
Всем привет!
Коллеги, появилась удивительная проблема: при расчете курсовой разницы периодической операцией из ГК по определенному счету вылетает ошибка: "Ошибка в суммы в валюте 'RUR'. Необходимо округлить до '0,00'." и "Сумма в -22 293 038 037,63 -22 293 038 037,63, кот. проведена по счету 'У66.22', слишком мала. ". В итоге транзакция откатывается и пользователю не удается рассчитать курсовую разницу. Насколько я понял, проблема в округлении чисел, разрядность которых превосходит тип real (16 знаков). По стеку ошибка вылетает на следующем методе: static boolean checkRoundOff(LedgerAccount _accountNum, AmountMST _amountMST) { if (_amountMST != Currency::amount(_amountMST)) { error(strFmt("@SYS27168",CompanyInfo::find().currencyCode, Currency::roundOffAmount(CompanyInfo::find().currencyCode))); return checkFailed(strFmt("@SYS18429", _amountMST, Currency::amount(_amountMST), _accountNum)); } return true; } Основная валюта компании рубли, в настройках ГК округление настроено как 0.00 |
|
Теги |
главная книга, курсовая разница, округление |
|
Похожие темы | ||||
Тема | Ответов | |||
Курсовая разница. Ax3.0 | 4 | |||
курсовая разница в АХ | 0 | |||
Курсовая разница | 2 | |||
Курсовая разница отсутствует почему то | 5 |
Опции темы | Поиск в этой теме |
Опции просмотра | |
|