![]() |
#3 |
Участник
|
ПРОБЛЕМА 3. Все коррекции, сделанные по приходным проводкам с типом «Производство» при помощи коррекции проводок в форме «Закрытие и коррекция» отменяются!
При расширенном расчете себестоимости, который запускается из InventCostItemDim ::calcWIPProdHistoricalCost_RU после расчета стоимости основного выхода, себестоимость этого выхода корректируется в ProdCalculatingWIPEngine_RU ::createProdReceiptAdjust по формуле [коррекция] = [рассчитанная стоимость] – [текущая стоимость]. Таким образом, если вы перед закрытием распределили затраты на приходы из производства, то эти суммы будут успешно отменены и себестоимость выходов будет равна себестоимости расходов по производственному заказу. РЕШЕНИЕ На таблице InventTrans создайте метод: X++: // DPL InventClosingFix_OK 13.02.2011 OK //расчет суммы коррекций добавленной распределением затрат Amount calcManualCorrAmount_OK() { InventSettlement invSettlement; InventClosing inventClosing; ; select sum(CostAmountAdjustment) from invSettlement where invSettlement.Cancelled == NoYes::No && invSettlement.TransRecId == this.RecId exists join inventClosing where inventClosing.Voucher == invSettlement.Voucher && inventClosing.AdjustmentType == InventAdjustmentType::Transaction; return invSettlement.CostAmountAdjustment; } X++: //+ DPL InventClosingFix_OK 13.02.2011 OK //отнимаем чтобы не отсторнировать распределение затрат costAmount -= inventTrans.calcManualCorrAmount_OK(); //- DPL InventClosingFix_OK 13.02.2011 OK ProdWIPHistoricalCostTable_RU::createProductionRecord(prodTable.ProdId, |
|
Теги |
баг, закрытие склада, ошибка, ошибка при закрытии склада, себестоимость |
|
|