06.12.2013, 00:10 | #1 |
Banned
|
forUpdate перед ttsbegin
Вы так программируете?
X++: while select forUpdate myTable { ttsBegin; myTable.MyField = 'something'; myTable.update(); ttsCommit; } Потратил сегодня вечер анализируя это так как пакистанец (неплохой программист с Mерседесом) написал именно так. Внешней TTS нет. X++: void update() { SalesTable salesTable; SalesLine salesLine; ; Global::startLengthyOperation(); while select forupdate salesTable { select firstonly forupdate salesLine where salesLine.SalesId == salesTable.SalesId && salesLine.LineNum == 1; if (salesLine.RecId != 0) { salesLine.SalesForecastPricingManager = MultiRepTable::getSalesForecastPricingManager( salesLine.ItemId, salesTable); ttsbegin; salesLine.doUpdate(); salesTable.SalesForecastPricingManager = salesLine.SalesForecastPricingManager; salesTable.doUpdate(); ttscommit; } } Global::endLengthyOperation(); } |
|
|
|