![]() |
#11 |
Участник
|
AX 2012 CU7, форма SalesCopying, метод CustInvoiceTrans\upDateRemainderCache, некорректный расчет ранее возвращенного кол-ва для заказов отгруженных через функционал отложенного перехода права собственности, также ошибка есть в случае использования функционала проектов.
X++: void upDateRemainderCache(CustInvoiceTrans _custInvoiceTrans) { SalesQty qty; PdsCWInventQty cwQty; SalesLine localSalesLine; // <GEERU> GoodsInRouteInventTransIdDelivery_RU inventTransIdDelivery_RU; // </GEERU> if (!creditNoteReturnRemainder.exists(_custInvoiceTrans.RecId)) { localSalesLine = SalesLine::find(_custInvoiceTrans.InventTransId); [qty, cwQty] = SalesLine::pdsRemainReturnLotQtyAllCreditNote(_custInvoiceTrans.InventTransId, localSalesLine.ProjId); // <GEERU> if (SysCountryRegionCode::isLegalEntityInCountryRegion([#isoRU])) { inventTransIdDelivery_RU = _custInvoiceTrans.custInvoiceTrans_RU().InventTransIdDelivery_RU; } if (inventTransIdDelivery_RU) { qty = UnitOfMeasureConverter::convert(-SalesLine::qtyDeliveryToCreditNote_RU(inventTransIdDelivery_RU), UnitOfMeasure::unitOfMeasureIdBySymbol(_custInvoiceTrans.inventTable().inventUnitId()), UnitOfMeasure::unitOfMeasureIdBySymbol(_custInvoiceTrans.SalesUnit), NoYes::Yes, InventTable::itemProduct(_custInvoiceTrans.ItemId)); qty = localSalesLine.type().invoicedInTotal() - qty; } // </GEERU> creditNoteReturnRemainder.insert(_custInvoiceTrans.RecId, qty); cwCreditNoteReturnRemainder.insert(_custInvoiceTrans.RecId, cwQty); } } X++: localSalesLine = SalesLine::find(_custInvoiceTrans.InventTransId); X++: localSalesLine = SalesLine::findInventTransId(_custInvoiceTrans.InventTransId); X++: public server static container pdsRemainReturnLotQtyAllCreditNote( InventTransId _inventTransId, ProjId _projId = SalesLine::find(_inventTransId).ProjId)
__________________
Sergey Nefedov |
|
|
За это сообщение автора поблагодарили: gl00mie (3), S.Kuskov (1). |