Показать сообщение отдельно
Старый 04.06.2009, 03:02   #9  
vanokh is offline
vanokh
Участник
 
108 / 63 (3) ++++
Регистрация: 23.10.2008
Цитата:
Сообщение от Raven Melancholic Посмотреть сообщение
У вас немного другая проблема
А в локализованной верисии DAX4 появился механизм указания накладной, которую корректируем. Но дальше, чем использовать этот выбор в печати накладных, локализаторы не пошли.
Насколько я понял это имеется в виду функционал Ax4 SP2, верно? Но сам функционал сторнирования (через кредит-ноту) не изменился в SP2, то есть сначала все равно создается кредит-нота, а потом уже при разноске накладной можно указать корректируемую накладную. И проводки на момент разноски накладной уже существуют "неверно подхваченные" и при физической разноске они же и берутся (класс InventUpd_Physical, методы updatePhysicalReturnedIssue и updatePhysicalReturnedReceipt). А "подхватываются" именно при создании строки заказа в классе PurchCopying_CreditNote (SalesCopying_CreditNote).

Цитата:
Сообщение от Nuta Посмотреть сообщение
У нас такая же проблема (Ax 4.0 Sp2).
При сторнировании подхватывается первая по порядку проводка.
Этот случай был решен через добавление метода transVoucher в класс InventMov_Purch:

X++:
Voucher transVoucher()
{
    ;
    if (purchLine.RefReturnInvoiceTrans_W)
    {
        // возвращаем Voucher сторнируемой накладной
        return VendInvoiceTrans::findRecId(purchLine.RefReturnInvoiceTrans_W).vendInvoiceJour().LedgerVoucher;
    }
    return '';
}
и добавление параметра при вызове InventTrans::updateMarking в InventUpd_Estimated.createEstimatedInventTrans:

X++:
// вместо markNow = InventTrans::updateMarking(movement.inventRefTransId(), movement.transId(), -qty,  '', SortOrder::Descending);
markNow = InventTrans::updateMarking(movement.inventRefTransId(), movement.transId(), -qty,  movement.transVoucher(), SortOrder::Descending);
Таким образом, подхватывается не первая попавшаяся проводка, а та, которая соответствует сторнируемой накладной (по Voucher). Ссылка на лот заполняется корректно и закрытие склада тоже нормально отрабатывает.

Еще побочный эффект этого исправления - заметно ускорилась разноска сторнирующей накладной

Последний раз редактировалось vanokh; 04.06.2009 в 04:56.