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

Вниз

ADO, JRO, Access, DBGrid и вообще.   Найти похожие ветки 

 
0_archi_0   (2006-10-12 18:11) [0]

Всем доброго вечера, есть вопросик.
Есть база данных на Aecess - AIDS.mdb (главная таблица, две связанные).
Схематично: ADOConnection1 -> PacientiADOTable ->  PacientiDataSource -> PacientiDBGrid на главной форме.
Из меню главной формы вызывается следующая процедура:
procedure TMainForm.N9Click(Sender: TObject);
var ReplObject: Replica;
   Provider, Src, Dst: String;
begin
ReplObject:= CoReplica.Create;
Provider:= "Provider=Microsoft.Jet.OLEDB.4.0;";
Src:= Provider+"Data Source = "+"AIDS.mdb";
Dst:= "AIDS1.mdb";
ReplObject.Set_ActiveConnection(Src);
try
 ReplObject.Synchronize(Dst, jrSyncTypeImport, jrSyncModeDirect);
except
 on E: Exception do
     ShowMessage(e.message);
end;
//Данный кусок кода переносит изменения из базы AIDS1.mdb в базу AIDS.mdb - главную реплику. К нему вопросов нет
if DataModule1.PacientiADOTable.Modified then
DataModule1.PacientiADOTable.Post;
DataModule1.PacientiADOTable.Requery;
Application.Terminate;
//а вот здесь вопросы - после выполнения кода приложение не заканчивается, как висела форма так и висит?????????? и данные DBGride не обновляются.
end;
Может кто что подскажет?
Заранее благодарю.


 
ANB ©   (2006-10-12 18:21) [1]

А зачем обновлять грид, если собираешься закрыть приложение ?


> if DataModule1.PacientiADOTable.Modified then
> DataModule1.PacientiADOTable.Post;

Вот этот кусок вообще бессмысленен.


 
0_archi_0   (2006-10-12 18:45) [2]

Первоначально ход мыслей был таков - жмется кнопка меню, происходит репликация, обновленные данные появляются там же где до этого были старые в DBGrid"e, которы на форме постоянно находится. Однако данные в DBDrid"e не обновляются, чтобы это произошло надо нажать еще раз меню.
А это не есть хорошо, поэтому решил просто закрыть форму, а когда открываешь снова программу данные обновлены и их видно - как альтернативный (другого выхода не знаю) выход.
А отчего форма не реагирует на Application.Terminate???????????


 
ANB ©   (2006-10-12 18:53) [3]


> А отчего форма не реагирует на Application.Terminate????
> ???????

Ээээ. Вообще то форма Close закрывается. Наверное, потому и не кусает . . . А в каком обработчике это все происходит ?


 
0_archi_0   (2006-10-12 19:36) [4]

Форма не реагирует не только на Application.Terminate, но и на весь комплекс:

Self.Close;
MainForm.Close;
Application.Terminate;

Но с этим я разобрался, просто добавил строку - ReplObject:=nil;
Хотя может красивее что-то есть.

А вот DBGrid обновляеся только после второго нажатия менюшки, как бы за одни раз бы?



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

Форум: "Базы";
Текущий архив: 2006.12.24;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.46 MB
Время: 0.044 c
15-1164977042
low_man
2006-12-01 15:44
2006.12.24
Помогите песенку перевести


1-1163014103
gosha73
2006-11-08 22:28
2006.12.24
перехват WM_SIZE для TApplication


15-1164874133
кви
2006-11-30 11:08
2006.12.24
с++


11-1142433325
Godness
2006-03-15 17:35
2006.12.24
Странное сворачивание формы при использовании KOLApplet


3-1160978111
Sergey_b
2006-10-16 09:55
2006.12.24
Вставка данных





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский