День добрый всем, не знаю проскакивала ли подобная тема, по поиску не нашел.
У контрола формы, основанного на EDT, перекрыт метод lookup. Примерный код выглядит так:
X++:
public void lookup()
{
Query query = new Query();
QueryBuildDataSource queryBuildDataSource;
SysTableLookup sysTableLookup;
tableId tableId;
fieldId fieldId;
;
tableId = tableNum(Table1);
sysTableLookup = SysTableLookup::newParameters(tableId, this,false);
fieldId = fieldnum(Table1, Field1);
sysTableLookup.addLookupfield(fieldId);
queryBuildDataSource = query.addDataSource(tableId);
queryBuildDataSource.addRange(fieldnum(Table1, Field2)).value(SysQuery::value(RangeValue));
queryBuildDataSource.addGroupByField(fieldnum(Table1,Field1));
sysTableLookup.parmQuery(query);
sysTableLookup.performFormLookup();
}
Значения Field1 в таблице, которая является источником данных для лукапа, не уникальные, поэтому по ним производится группировка. Все работает корректно. Но если мы попробуем сделать сортировку в выпадающем списке, то групппировка слетает.
Как с этим бороться, может кто подскажет?