Спасибо ответившим, сегодня сам разобрался...
Действительно, на обычных таблицах сортировка по подчиненному
датасурсу работает в лучшем виде.
Пример - форма
CustInvoiceJournal (у меня, кстати, сортировка
по цене в
InventTable не работает).
Но я забыл упомянуть, что моя таблица - временная
Временные таблицы вообще плохо дружат с постоянными - например, не
реагируют на их сортировку в том числе и из кода.
Запросы
while select Tmp
join InventDim
order by inventBatchId asc
where Tmp.InventDimId == InventDim.inventDimId
while select Tmp
join InventDim
order by inventBatchId desc
where Tmp.InventDimId == InventDim.inventDimId
дают одинаковый порядок строк, а если написать
while select InventDim
order by inventBatchId desc
join Tmp
where Tmp.InventDimId == InventDim.inventDimId
, то Аксапта (трехзвенка) заорет в том смысле, что нельзя вешать
временные таблицы на невременные

Так что, придется извращаться - создать во временной таблице все поля, по
которым надо сортировать и заполнять их из подчиненной таблицы...