В общем - биться об заклад не буду, но мне кажется что у тебя после такой корректировки случаться грабли с проводками, скорректированными после даты закрытия/пересчета. То есть - функция updateReceiptAdjustment(), она не только прогоняет коррекцию с прихода на расход (которая в этой ветке вряд ли сработает), но и рассчитывает сумму более поздних коррекций. Скажем купил ты товар 25ого августа, продал 27ого, а 5 сентября начислил накладные расходы и теперь закрываешь август. Эта функция вызовет calcLaterAdjustment и положит его в mapSettleValue. А updateModel() в момент создания сопоставления, вытащит эту сумму (если она есть) и отнимет ее из inventTrans.costAmountPosted+inventTrans.CostAmountAdjustment. Я очень подозреваю, что если ты так сделаешь, то у тебя в такой ситуации августовские списания пойдут с учетом сентябрьских накладных расходов.
Просто попробуй сделать контрольный пример (с накладняком после продажи) и посмотри какая у тебя будет себестоимость расхода после закрытия августа.
|