Показать сообщение отдельно
Старый 28.10.2009, 13:30   #1  
Avalon is offline
Avalon
Участник
 
11 / 10 (1) +
Регистрация: 28.10.2009
lookup form странное поведение
Добрый день, установлена Axapta 3 SP6.
Переопределяю на любой форме метод lookup у поля на:
X++:
public void lookup()
{
    Query                   query = new query();
    QueryBuildDataSource    queryBuildDataSource;
    QueryBuildRange         queryBuildRange;
    SysTableLookup sysTableLookup = sysTableLookup::newParameters(tableNum(EmplTable), this);
    ;
    sysTableLookup.addLookupfield(fieldNum(EmplTable, Name));
    sysTableLookup.addLookupfield(fieldNum(EmplTable, EmplId), true);
    queryBuildDataSource = query.addDataSource(tableNum(EmplTable));
    //queryBuildDataSource.addSortIndex(indexNum(EmplTable, NameIdx));
    queryBuildDataSource.addSortField(fieldNum(EmplTable, Name), SortOrder::Ascending);
    sysTableLookup.parmQuery(query);
    sysTableLookup.performFormLookup();
}
И наблюдается странная картина - если поле пусто, то выводится то, что прописано в коде - 2 поля из таблица работников, отсортированных по имени, если же мы хотим изменить уже существующее, то вываливается не понятно что, без всяких сортировок и не связанное никакое логикой.
Вот форма для примера изменения водителя в заказах: Form1_test.xpo
Кто-нибудь может подсказать что не так сделано? А то вообще никаких мылей