Показать сообщение отдельно
Старый 04.04.2003, 10:28   #5  
Антон Солдатов is offline
Антон Солдатов
Соучастник
Аватар для Антон Солдатов
 
386 / 27 (1) +++
Регистрация: 29.12.2002
Адрес: Новосибирск
проблему решил, но криво. сделал след. образом:
Цитата:
query = fDS.query();
criteriaRecId = query.dataSourceNo(1).findRange(fieldName2Id(fDS.table(),'RecId'));
if (!criteriaRecId)
criteriaRecId = query.dataSourceNo(1).addRange(fieldName2Id(fDS.table(),'RecId'));
criteriaRecId.value(strFmt('%1',0));
fDS.executeQuery();
fDS.cursor().clear();
fDS.refresh();
плюс к этому: на таблицах, которые обрабатываются,
построил индекс по RecId, иначе на форме остаются старые значения.

конечно, лучше бы было посмотреть, как реализован executeQuery и не делать
ничего-не-возвращающий select, а взять какой нибудь iterator полей в форме, и обнулить их... но исходники FormDataSource похоже спрятаны, и как это делать я не знаю - поэтому и постил в форум.