|  19.08.2010, 17:22 | #1 | 
| Участник | Сортировка и вывод полей в lookUp-е 
			
			Доброго времени суток. Возникла проблема, никак не поборю ))) Нужно создать лукап, в который выводятся данные из таблицы Месяцы (inf_Months) по условию для одного поля. Условие не меняется все время работы с лукапом. Таблица хранит месяца работы (ежемесячные периоды), открытые или закрытые. Структура таблицы следующая: 1. PeriodDate - тип Date, заполняется как первое число каждого месяца в виде 01.08.2010 2. MonthID - текстовое значение периода в виде "2010 Август" 3. PeriodStatus - признак Открыт/Закрыт (тип Enum) так вот нужно в лукапе вывести ТОЛЬКО MonthID, но отсортированное по значению PeriodDate. Текст лукапа должен содержать также MonthID. Трудность состоит в сортировке... При первом открытии списка все хорошо, после выбора значения и повторном открытии с сортировкой какая-то беда. Ни по индексу не хочет сортировать, ни по полю. Сортирует верно только если поле сортировки (PeriodDate) добавляется с признаком _returnItem = True, но выводить в текст нужно другое поле. Заранее спасибо за помыщь Код:     Query                   q = new query();
    QueryBuildDataSource    qbds = q.addDataSource(tablenum(inf_Months));
    SysTableLookup          stl = SysTableLookup::newParameters(tablenum(inf_Months), this);
    inf_Months              tblM;
    FormRun                 fr;
    ;
    qbds.addRange(fieldnum(inf_Months, PeriodStatus)).value(SysQuery::value(inf_PeriodStatus::Open));
    stl.parmQuery(q).dataSourceNo(1).addSortIndex(indexnum(inf_Months, PK_inf_Months));
    stl.addLookupfield(fieldnum(inf_Months, PeriodDate));
    stl.addLookupfield(fieldnum(inf_Months, MonthID));
    fr = stl.formRun();
    this.performFormLookup(fr); | 
|  |