А есть в классе InventCostItemDim такой метод updateReceiptAdjustmentTrans
в котором есть следующий код:
<div class='XPPtop'>X++</div><div class='XPP'>
[color=:blue]if[/color] (settleValue != 0)
{
[color=:blue]if[/color] (mapInventTrans && mapInventTrans.[color=:blue]exists[/color](settlementIssue.TransRecId))
issue = mapInventTrans.lookup(settlementIssue.TransRecId);
[color=:blue]else[/color]
issue = settlementIssue.inventTrans([color=:blue]true[/color]);
[color=:blue]if[/color] (! issue.recId)
{
this.createErrorAdjustment(_receipt,-settleValue);
}
[color=:blue]else[/color]
{
[color=:blue]if[/color] (issue.costValue() - settleValue > 0)
{
errorAmount = issue.costValue() - settleValue;
this.createErrorAdjustment(_receipt,errorAmount);
settleValue -= errorAmount;
}
_receipt.costAmountSettled += settleValue;
issue.costAmountSettled -= settleValue;
issue.costAmountAdjustment -= settleValue;
this.updateInventTrans(issue);
[color=:blue]if[/color] (settlementReceipt.transDate [color=:blue]==[/color] inventClosing.transDate &&
settlementReceipt.voucher [color=:blue]==[/color] inventClosing.voucher)
{
settlementReceipt.costAmountSettled += settleValue;
settlementReceipt.update();
settlementIssue.costAmountSettled -= settleValue;
settlementIssue.costAmountAdjustment -= settleValue;
settlementIssue.update();
}
[color=:blue]else[/color]
{
this.updateSettlementReceipt(settlementReceipt,settleValue);
this.updateSettlementIssue(settlementIssue,settleValue);
}
this.updateTrans(issue,-settleValue);
}
}</div>
так в чем же сермяжная правда этих:
_receipt.costAmountSettled += settleValue;
issue.costAmountSettled -= settleValue;
issue.costAmountAdjustment -= settleValue;
или этих строк:
settlementReceipt.costAmountSettled += settleValue;
settlementReceipt.update();
settlementIssue.costAmountSettled -= settleValue;
settlementIssue.costAmountAdjustment -= settleValue;
settlementIssue.update();
как мы видим, пара проводок по сопоставлению обновняется, но... приходные проводки не обновляют коррекцию, а расходные обновляют!
Где он смысл то? Для меня это еще одна загадка.
|