Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Обновление грида после Update [D7, Access]


Страницы:   1 2

neat ©   (2006-03-07 10:15:00) 

Приветствую всех!
Такая проблемка. Есть две связанные таблицы подключенные к гридам. В подчинённой данные обновляю через запрос, но обновлённые данные на гриде появляются только те, которые принадлежат текущему индексу главной таблицы,

ГЛАВНАЯ             Подчинённая

поле1 -----------|_ поле11
поле2 -----|       |_ поле12
поле3 -|    |       |_ поле13
поле4       |______  поле21
              |______  поле22      
       
т.е., допустим, курсор в момент обновления(изменения) данных находится на поле2 главной таблицы, то обновлённые данные я вижу только у связанных с этим полем, т.е. поле21, поле22. Остальные обновления видно только после перезапуска программы. Почему так?


neat   (2006-03-07 11:22:00) [21]

Да нет же, с чего ты взял, что вручную. я же пишу UPDATE в запросе. Я может непонятно описал проблему? Скажи, что неясно, попробую ещё раз, а то у меня всякие мысли бредовые лезут на счёт как это всё обойти, такой огород получается.


Sergey13   (2006-03-07 11:15:00) [22]

2[2] neat   (07.03.06 10:32)
> Меняю только в подчинённой.
В гриде меняешь вручную? Зачем тогда вообще обновление?


neat   (2006-03-07 11:05:00) [23]

Что такое LockWindowUpdate? Прошу прощения, а как отсоединить DataSource? Как подключить другой понятно, а как задать пустое значение этому свойству?
> а еще лучше разорви связь, обнови, после восстанови... и будет счастье. ;о)
Сделал так, но почему-то всё по старому. Совсем забыл сказать, новые данные отображаются на другой странице PageControl(на одной странице грид с одними полями(TabSheet1), на другой странице(TabSheet2) грид с другими полями той же таблицы). Может всё с этим связано?


sniknik   (2006-03-07 10:45:00) [24]

> Отключить (DisableControl) не получится, потому что при этом теряется связь с починённой таблицей.
попробуй "отключить" все окно (LockWindowUpdate), или отсоедени DataSource (возможно нужно скомбинировать), а еще лучше разорви связь, обнови, после восстанови... и будет счастье. ;о)


neat   (2006-03-07 10:32:00) [25]

В главной таблице я не меняю ничего. Меняю только в подчинённой. Данные, изменённые в подчинённой таблице отображаются только те, которые видно на экране перед обновлением, т.е. связанные с полем текущей записи в главной таблице. Если менять в датасете, то придётся пробегать по всей базе и наблюдать неприятное мерцание на контролах. Отключить (DisableControl) не получится, потому что при этом теряется связь с починённой таблицей.


Sergey13   (2006-03-07 10:20:00) [26]

Непонятно, что ты меняешь в главной таблице и что должно измениться при этом в подчиненной.
Меняй в датасете, а не через отдельный запрос - и обновлять не надо ничего.


Страницы:   1 2

Наверх

Титульная страница Поиск, карта сайта Написать письмо