Добрый день, уважаемые посетители форума

У меня такая проблемма. Изначально стояла цель - вывести на гриде рядом с логинами пользователей (Table1.userId) их имена (Table2.Name), причем так, чтобы по именам можно было искать и сортировать.
Объединила на форме источники данных Table1 и Table2 (linkType у Table2 innerJoin).
Корме того, Table1 и Table2 сгуппированы по логину пользователя.
Table1
X++:
public void init()
{
QueryBuildDataSource ualGroup;
;
super();
ualGroup = this.query().dataSourceName(Table1_DS.name());
ualGroup.sortClear();
ualGroup.orderMode(OrderMode::GROUPBY);
ualGroup.addSortField(fieldnum(Table1, UserId));
ualGroup.addSortField(fieldnum(Table1, LocationId));
}
Table2
X++:
public void init()
{
QueryBuildDataSource ualGroup;
;
super();
ualGroup = this.query().dataSourceName(Table2_DS.name());
ualGroup.sortClear();
ualGroup.orderMode(OrderMode::GROUPBY);
ualGroup.addSortField(fieldnum(Table2, id));
ualGroup.addSortField(fieldnum(Table2, name));
}
Итог: По Table1.userId и ищет, и сортирует, а по Table2.Name только ищет, не сортирует

Подскажите, в чем может быть причина и как с ней бороться?