20.03.2003, 16:51 | #1 |
OntargIT
|
Проблема: подстановка значений по дефолту в диалог QueryRun
Здравствуйте, уважаемые!
Итак, попрос: Надо сделать фильтр по строкам таблицы, скажем, DateTrans, при выполнении периодической операции по этой таблице. При этом по дефолту в одно из полей в диалоге запроса надо поставить значение из поля TransDate найденой строки, скажем, DateTable. Класс есть: xxxxxXxxxxxCreate static void main(Args args) { .... if (xxxxxXxxxxxCreate.prompt()) { xxxxxXxxxxxCreate.run() } } и, соответственно, prompt: boolean prompt() { Query q; TransDate transDate = DateTable::find(...).TransDate; ; queryRun = new QueryRun(queryStr(DateTableQuery)); q = queryRun.query(); q.dataSourceTable(tableNum(DateTrans)).findRange(fieldNum(DateTrans,TransDate)).value(sysQuery::value(transDate)); return queryRun.prompt(); } Вопрос знатокам: почему значение transDate не появляется в соотв поле диалога запроса, а вместо этого происходит unpack ранее введенных значений c runBaseDialog? DateTableQuery - interactive. Менять последовательность сборки qr тоже не помогает (в смысле, если сначала собирать query, а потом делать new QueryRun(q)) thanks in advance |
|
|
|