2 S.Kuskov
Кстати, да, если сделать через insert_recordset, то опять будет 184 записи вставлено.
И это нормально.
По поводу приведённой ссылки - я её видел раньше и в ней отписывался.
И опять таки не считаю, что должно быть по-другому.
Т.е. сначала должен отработать внешний запрос и получить результирующее множество. И изменение записей в уже в этом цикле не должно оказывать никакого влияния на это результирующее множество - т.е. по сути мы должны получать их из "снэпшота".
Более того, что касается конкретно данного случая - то там значения комбинации
InventTransId, InventBatchId, SequenceNumber в выбранных данных - уникально!
Поэтому даже если б и учитывались данные вставленные внутри цикла, то всё равно результат не должен быть таким и сортировка не может на него повлиять.
Может я, конечно, всё ещё живу Ораклом, где такое в принципе невозможно.

Но такое поведение является источником непредсказуемости поведения системы на разных данных и просто рвёт все мои шаблоны...
Upd: Кстати говоря, проблемы в этом месте были замечены только для случаев когда кол-во попадающих записей в запрос превышает 100.
Если меньше 100, то вроде как (говорят) всегда отрабатывает корректно.