С QueryRun точно работает. Вот джоб:
X++:
static void Job10(Args _args)
{
InventTable inventTable;
Query query = new Query();
QueryRun queryRun;
QueryBuildDataSource qbds;
int i = 2;
;
qbds = query.addDataSource(tableNum(InventTable));
qbds.orderMode(OrderMode::GroupBy);
qbds.addSortField(fieldId2ext(fieldNum(InventTable, Dimension), i));
qbds.addSelectionField(fieldNum(InventTable, RecId), SelectionField::Count);
queryRun = new QueryRun(query);
while (queryRun.next())
{
inventTable = queryRun.getNo(1);
info(strFmt("%1 %2", inventTable.Dimension[i], inventTable.RecId));
}
}