Показать сообщение отдельно
  #1  
Старый 01.10.2008, 13:50
dbgrid dbgrid вне форума
Прохожий
 
Регистрация: 01.10.2008
Сообщения: 7
Репутация: 10
Печаль не успевают обновляться БД

доброго времени суток.

есть программка состоящая из 2 форм на которых расположены DBGridы

Form1 DBGrid1 Table1
и
Form2 DBGrid2 Table2

ДЛЯ ПРИМЕРА
в Table1 есть столбцы
<№класса> и <индексВЕСА>

в Table2 столбцы
<ФИО ученика><№класса><вес><рост><возраст><индексВЕСА>) ))

в Form2 есть процедура которая расчитывает <индексВЕСА> в Table2 для каждого ученика и результат отображает в DBGrid2

теперь из Form1 если я хочу получить полный расчёт по школе и в Table1, занести усреднённые индексыМАССЫ по классам, я построчно перебираю DBGrid1 и обращаюсь к процедуре в Form2, результат усреднения по классам из Table2 заноситься в <индексВЕСА>Table1 и выбирается следующая строка и т.д.

так вот,
если процедуру из Form2 запускать из под Form2 то всё расчитывается без проблем
если же в Table2 произвести какое нибудь изменение данных<рост><вес>..т.д.
и запустить полный расчёт из Form1 то результат часто бывает не верен

т.е. сначало надо запустить процедуру в form2 а потом уже запускать полный расчёт из form1 или раз 5 надо перезапускать полный расчёт чтобы получить правильные результаты

пользуюсь компонентами ADO так что по нескольку раз приходилось прописывать
ADOQuery.close;
ADOQuery.open;
результат нулевой

если запустить прогу на выполнение пошагово через F7)), то всё отрабатывает нормально, как я понимаю таблицы не успевают обновляться, что делать ума не приложу
помогите пожалуйста))
Ответить с цитированием