Показать сообщение отдельно
Старый 21.07.2011, 15:53   #1  
Andrux is offline
Andrux
Участник
Axapta Retail User
 
263 / 17 (1) ++
Регистрация: 29.05.2007
НДС с положительных курсовых разниц
Добрый день! Подскажите, на сколько правльно поведение системы в случае расчета НДС при положительной курсовой разнице.
AX 2009 RU5. Расчеты с клиентами:
14.02.2011 НКЛ1 открытая накладная на сумму 0.72 EUR
31.03.2011 НРКР1 расчет нереализованной к/р 0.19 RUB (положительная к/р)
04.04.2011 ОПЛ1 оплата накладной на сумму 28.94 RUB

При сопоставлении (крайняя дата) возникает положительная курсовая разница 0.31 RUB, которая должна отвестись на счет 91.01 и, с которой, должен начислиться НДС: 0,31*18/118 = 0,05 RUB на счет 91.05:
Дт 91.05 Кт 68 0.05 RUB - это НДС
Дт 62 Кт 91.01 0.31 RUB - это сумма к/р

Но система при расчете курсовой разницы учитывает еще и сумму нереализованной к/р: 0,31-0,19= 0,12 В результате получается:

Дт 91.05 Кт 68 0.05 RUB - это НДС
Дт 62 Кт 91.01 0.12 RUB - это сумма к/р

Сумма НДС расчитывается исходя из суммы 0,31, а на 91.01 отводится сумма с учетом нереализованной к/р (0,12 RUB).

В классе CustVendExchAdjustment_W в методе getPostingAmountTax всегда возвращается сумму курсовой разницы по накладной:
X++:
protected container getPostingAmountTax(AmountMST           _exchRateDiff,
                                        AmountMST           _standardExchRateDiff,
                                        LedgerPostingType   _posting,
                                        LedgerPostingType   _standardPosting)
{
    AmountMST           exchRateDiff;
    LedgerPostingType   posting;
    ;
    //if (custVendSettle.isExchAmountDiff_RU())
    //{
        // it doesn't matter what kind of difference we post
        // VAT is always calculated from standard difference amount (from invoice exchange rate)
        // AXSE_3222
        exchRateDiff = _standardExchRateDiff;
        posting      = _standardPosting;
    /*}
    else
    {
        exchRateDiff = _exchRateDiff;
        posting      = _posting;
    }*/
    return [exchRateDiff, posting];
}
Но даже убрав комментарии, все-равно в данном примере сумма НДС будет расчитываться исходя из курсовой разницы по накладной (0,31 RUB).

Последний раз редактировалось Andrux; 21.07.2011 в 15:58.