Вниз
Скачать: 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 вся ветка

Скачать: CL | DM;



Память: 0.47 MB
Время: 0.005 c
3-1268903413
rar
2010-03-18 12:10
2011.12.25
BLOB -> Oracle


15-1314986696
Virgo_Style
2011-09-02 22:04
2011.12.25
программирование IncDay-style


15-1315415972
ClawClaw
2011-09-07 21:19
2011.12.25
Индиана Джонс (лего)


2-1315895287
KIR@PRO
2011-09-13 10:28
2011.12.25
TComboBox vs PStrings


2-1316273416
Anny
2011-09-17 19:30
2011.12.25
Координаты точек




   Наверх