![]() |
#2 |
Участник
|
При создании строки в SalesLine в методе таблицы createLine вызывается метод checkReservation().
<div class='XPPtop'>X++</div><div class='XPP'> [color=:blue]server[/color] [color=:blue]void[/color] createLine(boolean validation = [color=:blue]false[/color], boolean initFromSalesOrderTable = [color=:blue]false[/color], boolean initFromInventTable = [color=:blue]false[/color], boolean calcInventQty = [color=:blue]false[/color], boolean searchMarkup = [color=:blue]true[/color], boolean searchPrice = [color=:blue]false[/color], boolean checkReservation = [color=:blue]false[/color], InventTransId oldInventTransId = [color=:red]''[/color]) { ..... [color=:blue]if[/color] (checkReservation) this.checkReservation(); [color=:green]// Message to infolog [/color] .... }</div> При обновлении строки данный метод в штатном функионале не вызывается. (К сожалению ![]() Предлагаю следующее решение проблемы. Подкрутить метод update() на таблице SalesLine() <div class='XPPtop'>X++</div><div class='XPP'> [color=:blue]public[/color] [color=:blue]void[/color] update(boolean dropInvent = [color=:blue]false[/color], Common childBuffer = NULL) { SalesLineType salesLineType; ; [color=:green]// ZAN, message for infolog about reservation --> [/color] [color=:blue]if[/color](this.salesTable().Reservation [color=:blue]==[/color] ItemReservation::Automatic) this.checkReservation(); [color=:green]// ZAN, message for infolog about reservation <-- [/color] salesLineType = this.type(); salesLineType.update(dropInvent, childBuffer); }</div> Ломать классы InventUpdate и Ко не считаю необходимым в данной ситуации. ................... |
|