Добрый день. Столкнулся с таким интересным эффектом. В Axapta 2009 появилось дополнение при разноске накладной/счет-фактуры поля корректирующий документ. Проставляешь номера и даты документов и все разносится с этими значениями. Но в InventTrans проставляются значения сгенерированные системой из номерной серии.
Для меня до сих пор не понятно, зачем в InventTrans есть InvoiceId и некоторые отчеты работают на основе этой связи, а также значение маржи в строках накладных клиентов расчитывается тоже по этому полю (а не по voucher).. Переписал несколько методов:
X++:
SalesFormLetter_Invoice/updateInventory
inventUpd_Financial = InventUpd_Financial::newSalesInvoice(_inventMovement,
ledgerVoucher,
number,
localSalesParmLine,
salesParmSubLine,
salesParmUpdate.ReduceOnHand);
X++:
inventUpd_Financial = InventUpd_Financial::newSalesInvoice(_inventMovement,
ledgerVoucher,
salesParmTable.CorrectedInvoiceId_RU ? salesParmTable.CorrectedInvoiceId_RU : number,
localSalesParmLine,
salesParmSubLine,
salesParmUpdate.ReduceOnHand);
X++:
SalesFormLetter/initLrdgerVoucher
ledgerVoucherObject.parmDocument(
salesParmTable.DocumentDate ? salesParmTable.DocumentDate : salesParmTable.Transdate,
number);
X++:
ledgerVoucherObject.parmDocument(
salesParmTable.DocumentDate ? salesParmTable.DocumentDate : salesParmTable.Transdate,
salesParmTable.CorrectedInvoiceId_RU ? salesParmTable.CorrectedInvoiceId_RU : number);
Ничего я не подпорчу?... просто до конца не пойму смысл поля InventId в проводке по нооменклатуре...