AXForum  
Вернуться   AXForum > Microsoft Dynamics AX > DAX: Функционал
All
Забыли пароль?
Зарегистрироваться Правила Справка Пользователи Сообщения за день Поиск

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 06.12.2018, 15:09   #1  
VORP is offline
VORP
Участник
Аватар для VORP
 
146 / 95 (4) ++++
Регистрация: 26.05.2006
DAX 2012 R2: Расчёт курсовой по поставщикам - ошибка стандарта?
Добрый день,

возможно переоценивать авансы поставщикам и неправильно по РСБУ, но так получилось что они были переоценены.
При сопоставлении должна была откатиться нереализованная курсовая, она и откатывается, но на большую сумму чем изначально была рассчитана.

Это происходит из-за следующего:

в CustVendSettle.settleNow

custVendExchAdjustment.processRealizedExchAdj(
-realizedExchAdjAmount,
-realizedReportingExchAdjAmount,
firstCustVendTrans,
custVendTransDebit,
custVendTransCredit,
custVendTransOpenDebit,
custVendTransOpenCredit,
settleAmountCurDebit,
0, ///settleAmountCurCredit всегда ноль!!!!
, дальше в custVendExchAdjustment.processRealizedExchAdj

this.reverseUnrealizedExchAdj(
_custVendTransCredit,
_custVendTransOpenCredit,
(! _settleAmountCurCredit && _paym2Invoice) ? //Если ноль то берётся дебетовая сумма по пропорции, но у неё другой знак!!!
_settleAmountCurDebet / _paym2Invoice :
_settleAmountCurCredit,

Эта сумма идёт сюда:
[standardReversedUnrealAmountAccounting, standardReversedUnrealAmountReporting] = this.calcUnrealizedExchAdj(
-standardUnrealAmountAccounting,
-standardUnrealAmountReporting,
_custVendTrans,
transDate,
_settleAmountCur + _cashDisc); //СЮДА

//OpenAmountCur - сумма открытая после сопоставления. -8194
if (Currency::amount(abs(_settleAmountCur), _custVendTrans.CurrencyCode) <= abs(pendingSettledAmountCur))
{
openAmountCur += _settleAmountCur; //А это сумма сопоставления 32192
}

unrealisedAmountAccounting = Currency::amount(_exchRateDiffAccounting * abs(_settleAmountCur / (openAmountCur ? openAmountCur : _settleAmountCur)));
unrealisedAmountReporting = Currency::amount(_exchRateDiffReporting * abs(_settleAmountCur / (openAmountCur ? openAmountCur : _settleAmountCur)));

Пропорция получается больше 1, приблизительно 32192/24000. То есть отменяется больше чем было начислено. Должно быть где то 32192/40000

будет ли правильно здесь:
_settleAmountCurDebet / _paym2Invoice
брать сумму Debet с обратным знаком?
 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
emeadaxsupport: Documentation collection: Inplace upgrade MS Dynamcis AX 2012 RTM --> AX 2012 R2 CU7 Blog bot DAX Blogs 0 22.06.2014 01:19
Reporting Services extensions, Dax 2012 R2 igorian DAX: Администрирование 1 16.04.2014 20:33
DAX: How to gain additional value from the Microsoft application platform with Microsoft Dynamics AX 2012 R2 Blog bot DAX Blogs 3 21.06.2013 15:16
amer-ax: It was a great day! Blog bot DAX Blogs 3 29.12.2012 01:02
dynamicsaxtraining: Purchase Blog bot DAX Blogs 0 11.03.2012 05:25

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход

Рейтинг@Mail.ru
Часовой пояс GMT +3, время: 14:45.