Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Сохранение данных в ADO. Не могу "нормально" отобразить изменения 
:(
    Опции темы
RuthlessD
  Дата 23.6.2011, 16:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 16
Регистрация: 16.6.2011

Репутация: нет
Всего: нет



Доброе все время суток, у меня проблема - которую необходимо решить как можно скорее.
И так - у меня существует 2 формы.
1ая форма просмотра данных - тут таблицы связаны по полям, изменять данные тут нельзя. Для каждой таблицы существует свой ADOtable.
2ая форма - редактирования данных, тут те же таблицы, но без связей, для отображения каждой таблицы сущесвуют свои ADOTable, которые никак не зависят от 1й формы, разве что они подключены к одной и той же бд.

Дело  в том что на 2й форме есть кнопки удаления, добавления новых и изменения старых данных. При нажатии например на изменение данных открывается форма, с DBedit в которым вносятся запись которую пользователь выбрал для редактирования. Изменив данные я сохраняю например такой кнопкой.
Код

procedure TForm15.Button1Click(Sender: TObject);
begin
if dbedit2.text='' then begin  messagebox(0,'Введите имя файла!','Внимание',MB_OK); Abort; end  else
if dbedit3.text='' then begin  messagebox(0,'Введите информацию о файле!','Внимание',MB_OK); Abort; end  else
form12.adotable2.post;
form12.ADOTable2.UpdateBatch();
form12.ADOTable2.close;
Form12.ADOTable2.Open;
Form12.dbgrid2.Columns[0].Title.caption:='Специальность';
Form12.dbgrid2.Columns[0].Width:=450;
Form12.dbgrid2.Columns[1].Title.caption:='Название файла';
Form12.dbgrid2.Columns[2].Title.caption:='Информация о файле';
form3.ADOTable2.UpdateBatch();
form3.ADOTable2.close;
Form3.ADOTable2.Open;
Form15.Close;
end;

Тут я сохраняю изменения, после этого закрываю adotable и открываю их для каждой из форм ( просмотра и редактирования) но, при переходи на форму просмотра изменения не отображаются. Нужно перейти на какую либо другую форму, и вернуться на форму просмотра, тогда изменения будут видны. Но бывает так что изменения на форме просмотра видны сразу, пользуемся дальше и это может исчезнуть.  В чем дело  мне нужно что бы срабатывало 100%, а не раз на раз...? Уже многое что перепробовал, ничего не вышло.... Подскажи те что и как можно сделать в такой ситуации?

Пример моего изменения - хочу изменить специальность :  080110.02 Контролер сберегательного банка, выделяю ей на форме редактирования, нажимаю на кнопку для внесения изменения, дописываю к ней 4. 080110.02 Контролер сберегательного банка4, нажимаю сохранить изменения. На форме редактирования изменения вступили в силу(при закрытии формы редактирования открывается форма просмотра), а вот на форме просмотра их не видно. 
PM MAIL   Вверх
Данкинг
Дата 23.6.2011, 17:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Yersinia pestis
****


Профиль
Группа: Завсегдатай
Сообщений: 8302
Регистрация: 7.11.2006
Где: მოსკოვი

Репутация: 35
Всего: 130



Делай принудительный .Post. Если я вопрос правильно понял.


--------------------
There's nothing left but silent epitaphs.
PM MAIL WWW   Вверх
RuthlessD
Дата 23.6.2011, 18:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 16
Регистрация: 16.6.2011

Репутация: нет
Всего: нет



вкратце проблема в том, что изменив запись на форме редактирования, имзенения вступают в силу на ней сразу.  А при переходе на форму просмотра изменения вступают в силу по разному - либо сразу. Либо при при закрытии формы, с последующим открытием. Мне нужно избавиться от этой болячки, что бы изменения стандартно отображались всегда как только я перейду на форму просмотра записей.


А про принудительный post я чего то не до понял вас.
PM MAIL   Вверх
Данкинг
Дата 23.6.2011, 18:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Yersinia pestis
****


Профиль
Группа: Завсегдатай
Сообщений: 8302
Регистрация: 7.11.2006
Где: მოსკოვი

Репутация: 35
Всего: 130



Цитата(RuthlessD @  23.6.2011,  19:07 Найти цитируемый пост)
как только я перейду на форму просмотра записей.

AdoTable.Post делай принудительно по какому-то событию - выход из грида, закрытие формы и т.п.

Добавлено через 1 минуту и 28 секунд
Или вопрос в том, что изменения в гриде не отображаются, что ли? Тогда можно датасет переоткрыть, но лучше поискать на форуме, это обсуждалось уже.


--------------------
There's nothing left but silent epitaphs.
PM MAIL WWW   Вверх
RuthlessD
Дата 23.6.2011, 18:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 16
Регистрация: 16.6.2011

Репутация: нет
Всего: нет



Да, вот как раз изменения на форме редактирования в гриде сразу отображаются. А вот те  же изменения на форме просмотра когда как, бывает сразу, бывает нет. (в гриде). Делал специально при в несении изменений апдейт, закрытие и открытие всех adotable в которых изменения должны произойти, но это не помогает.
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: Базы данных и репортинг"
Vit
Петрович

Запрещено:

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами


Обязательно указание:

1. Базы данных (Paradox, Oracle и т.п.)

2. Способа доступа (ADO, BDE и т.д.)


  • Литературу по Дельфи обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи
  • Вопросы по SQL и вопросы по базам данных не связанные с Дельфи задавать здесь

FAQ раздела лежит здесь!


Если Вам помогли и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, Vit, Петрович.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Delphi: Базы данных и репортинг | Следующая тема »


 




[ Время генерации скрипта: 0.0744 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.