Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2005.12.18;
Скачать: [xml.tar.bz2];

Вниз

Как обновить програмно данные в TDBGrid после изменения данныхю.   Найти похожие ветки 

 
FShadow   (2005-11-29 16:57) [0]

Есть на главной форме TDBGrid в котором отображается некий набор данных. При добавлении записи появляется форма в которой вносятся данные. После закрытия этой формы данные в TDBGrid на главной форме должны обновиться.

Как это сделать?


 
Ega23 ©   (2005-11-29 16:59) [1]

Refresh набора данных, на который смотрит DBGrid. В простейшем случае:

With DBGrid.DataSource.DataSet do
begin
 Close;
 Open;
end;


 
FShadow   (2005-11-29 17:26) [2]

>Ega23
Не работает.

Опишу более подробно. На главной форме расположены TreeView и DBGrid.
По OnChange в TreeView отправляется запрос в БД для отображения данных в DBGrid. Так работает главная форма. И вот я добавляю данные в БД в новой форме. Закрываю ее пеерестраиваю TreeView и обновляю данные в DBGrid. Но они не обновляются хотя в БД изменения внесены. Если в TreeView перейти на др. ветку и вернуться назад то данные уже отображаются как надо.
Вот в чем вопрос.


 
Ega23 ©   (2005-11-29 17:29) [3]


> Но они не обновляются хотя в БД изменения внесены.


Так не бывает.
Может ты не спозиционировал набор данных?


 
FShadow   (2005-11-29 17:35) [4]

Что значит не спозиционировал? Можно подробнее.


 
Ega23 ©   (2005-11-29 17:36) [5]

Ну Locate сделал на нужную запись?


 
Ega23 ©   (2005-11-29 17:36) [6]

В смысле, НЕ сделал...


 
FShadow   (2005-11-29 17:45) [7]

В TreeView отображается одна таблица из БД а в DBGrid другая. связаны они по полю EmpID, т.е. при OnChange происходит выборка всех записей для DBGrid у которых EmpID совпадает с TreeView.Data. Зачем здесь Locate?


 
Ega23 ©   (2005-11-29 17:56) [8]

А, понял.
Вызови принудительно OnChange у TreeView.


 
FShadow   (2005-11-29 17:59) [9]

А что в качестве Sender:TObject  в нее заслать?


 
Ega23 ©   (2005-11-29 18:06) [10]

Ну если в твоём обработчике Sender не используется, то nil.


 
FShadow   (2005-11-29 22:27) [11]

Спасибо!


 
Sergey13 ©   (2005-11-30 09:18) [12]

2 FShadow
Просто ты наверное данные вносишь не только на отдельной форме, но и минуя датасет. Естественно его после этого надо обновлять. Если вносить через датасет, то эта "проблема" исчезнет.


 
Morgoth_   (2005-11-30 11:48) [13]

не вижу смысла тут же перечитывать дерево из таблицы, просто добавляешь в таблицу данные, рисуешь элемент в дереве, проставляешь ему data и пытаешься получить данные в другой таблице по этой Data, если они есть.
Зачем лишняя перечитка структуры дерева?


 
Ega23 ©   (2005-11-30 12:45) [14]


> не вижу смысла тут же перечитывать дерево из таблицы, просто
> добавляешь в таблицу данные, рисуешь элемент в дереве, проставляешь
> ему data и пытаешься получить данные в другой таблице по
> этой Data, если они есть.
> Зачем лишняя перечитка структуры дерева?
>


Действительно! И зачем вообще БД нужна? Хреначь всё в текстовые файлы - удобно и бесплатно. И послмотреть можно. Блокнотом.



Страницы: 1 вся ветка

Форум: "Начинающим";
Текущий архив: 2005.12.18;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.47 MB
Время: 0.013 c
4-1129555422
kolos_rus
2005-10-17 17:23
2005.12.18
Как создать панель на рабочем столе, чтобы она не пере


9-1110828695
Micke
2005-03-14 22:31
2005.12.18
Новая версия God Mode 0.0.2a


3-1130834985
Explorer
2005-11-01 11:49
2005.12.18
DBGridEh - как после update записи вернутся на нее же


14-1133214311
SerJaNT
2005-11-29 00:45
2005.12.18
Интегралы


14-1132670460
passlight
2005-11-22 17:41
2005.12.18
Нашли стрелочника...





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский