Показать сообщение отдельно
Старый 20.08.2010, 10:13   #4  
Corkscrew is offline
Corkscrew
Участник
Аватар для Corkscrew
 
9 / 11 (1) +
Регистрация: 13.11.2008
Цитата:
Сообщение от Corkscrew Посмотреть сообщение
перед строкой
qbds.addRange(fieldnum(inf_Months, PeriodStatus)).value(SysQuery::value(inf_PeriodStatus::Open));

попробуйте вставить
qbds.addSortField(FieldNum(inf_Months,PeriodDate));
забыл еще строку

qbds.orderMode(OrderMode::OrderBy);

и учитывая вопрос от ansoft получается

X++:
    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.orderMode(OrderMode::OrderBy); 
    qbds.addSortField(FieldNum(inf_Months,PeriodDate));  
    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));  // так вот нужно в лукапе вывести ТОЛЬКО MonthID
    stl.addLookupfield(fieldnum(inf_Months, MonthID));
    fr = stl.formRun();
    this.performFormLookup(fr);