|
|
#3 |
|
Участник
|
Спасибо, но, мне кажется, я плохо объяснила
1) Стандарт вызывает в purchLine.update() апдейт др строк той же закупки в VersioningPurchaseOrder.archivePurchLine(). Поэтому, после purchLine.update() первой строки, когда мы переходим в цикле ко второй той же закупки, то она уже проапдейчена и буфер из while select forupdate purchline where purchid = 'MyCurrentPONumber' имеет "старый" recVersion Тк закупки - одна из основных функциональностей, а уж апдейт всех строк закупок в транзакции - типичный сценарий, я не понимаю, как может быть , что описанный код с простым while select forupdate purchline не работает. Как бы вы написали апдейт всех строк одной закупки в одной транзакции , если бы вам понадобилось? 2) while select forupdate purchline должно накладывать пессимистичную блокировку , но это, имхо, тут не важно, тк все происходит в контексте одной и той же транзакции. Разве нет? Последний раз редактировалось Lankey; 08.01.2026 в 22:36. |
|
|
|
|
|