А RecordSortedList.sortOrder(...) метод использовали?
Вот это работает, например:
X++:
static void testRecordSortedList(Args _args)
{
TmpABC tmpABC;
RecordSortedList rslTmpABC = new RecordSortedList(tableNum(tmpABC));
rslTmpABC.sortOrder(fieldNum(tmpABC, ItemId));
tmpABC.ItemId = '1';
tmpABC.Amount = 1.0;
rslTmpABC.ins(tmpABC);
tmpABC.ItemId = '2';
tmpABC.Amount = 2.0;
rslTmpABC.ins(tmpABC);
tmpABC.ItemId = '3';
tmpABC.Amount = 3.0;
rslTmpABC.ins(tmpABC);
tmpABC.ItemId = '2';
rslTmpABC.find(tmpABC);
print tmpABC.Amount;
pause;
}