Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2011.12.25;
Скачать: CL | DM;

Вниз

Вопрос по ADO и компонентам БД   Найти похожие ветки 

 
WorkWork   (2011-09-11 20:57) [0]

Привет всем! нужна помощь! вообщем пишу прогу, которая подключается к базе через ADOConnection, с ним связан ADOQuery. На форме есть ДБ грид и пару ДБ едитов. Вообщем если изменять данные в ДБ эдите, то они не всегда сохраняются, например если я изменил и закрыл прогу, то они не сохранятся, а если я изменю и в гриде пощелкую вверх или вниз, то они сохранятся.

Как сделать так, чтобы они всегда сохранялись?


 
Inovet ©   (2011-09-11 21:27) [1]

В FormClose сделай Dataset->Post


 
Dennis I. Komarov ©   (2011-09-11 21:35) [2]

with TDBEditForm.Create(...             do try
 if ShowModal = mrOk then begin
   .....
   Post;
 end;
finally
 Free;
end;


 
WorkWork   (2011-09-11 21:39) [3]

Спасибо! зделаю Edit, Post.


 
WorkWork   (2011-09-12 04:20) [4]

Привет! у меня еще проблемка! Вообщем структура программы такая-же, плюс:
В 1-м ДБ гриде выделяется какая-то запись и в остальных ДБ компонентах отображаются данные по этой записи, помимо этого есть еще один ДБ грид, в котором отображается таблица по этой-же записи, которая в самой базе хранится в отдельной таблице.

Подскажите как лучше синхронизировать изменения во 2 гриде. Пробую делать ЕДИТ, ПОСТ, но в итоге получаются сплошные лаги. Например если я буду изменять данные во 2 гриде и перейду на другую запись в 1-м гриде, то они не всегда сохранятся. Неужели нет какого-то простого метода?


 
WorkWork   (2011-09-12 04:35) [5]

Вообщем вопрос сводится к тому, как проверить, что набор данных находится в режиме редактирования? Пробывал

if ADOQuery.CanModify then
...
if ADOQuery.State=dsEdit then
...

неполучается.


 
sniknik ©   (2011-09-12 09:59) [6]

> неполучается.
не в том месте смотришь? State должен показывать правильно.


 
Евгений07   (2011-09-12 10:40) [7]

Dataset->Post сохраняет данные в кэш и не во всех Дельфях физически в базу записывает.
Смотри Рефреш или Репайнт


 
Dennis I. Komarov ©   (2011-09-13 21:23) [8]

Выкинь грид и подумай над интерфейсом...


 
Inovet ©   (2011-09-13 22:44) [9]

> [5] WorkWork   (12.09.11 04:35)
> State=dsEdit

Ещё dsInsert надо проверить.


 
lesstab ©   (2011-09-14 13:23) [10]

А я пишу в OnDataChange событии DataSource компоненты фильтрацию записей соответствующих таблиц.



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

Текущий архив: 2011.12.25;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.007 c
3-1269079265
Alexsis f
2010-03-20 13:01
2011.12.25
Внешние ключи (error 150)


15-1315555359
OW
2011-09-09 12:02
2011.12.25
Вопрос по EurekaLog. Исходный код включить можно?


15-1315750988
Kerk
2011-09-11 18:23
2011.12.25
Попиарю чуток свое творчество :)


15-1315415185
ради бога!
2011-09-07 21:06
2011.12.25
Сотрудник съехал с катушек или злой умысел?


15-1315505298
Dimka Maslov
2011-09-08 22:08
2011.12.25
Как можно отучить