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

Вниз

Не обновляются данные   Найти похожие ветки 

 
Yasmin   (2007-06-26 12:15) [0]

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

Все компоненты, кроме dataSource, взяты с вкладки InterBase.

Имеется форма Ankets, в которой делается редактирование данных, из таблицы БД T_Ankets. На этой форме  находится хранимая процедура -  proc_upd, транзакция - Transp_upd, уровень изоляции транзакции = Read Commited. В свойствах процедуры указываю транзакцию Trans_upd и базу данных, которая лежит на другой форме, то есть у меня получается DataBase = Main_.db

Имеется другая форма Ankets_all, в гриде(G_ankets) которой отображены все данные из таблицы БД T_Ankets (которые редактируются в форме Ankets),  но транзакцию в этой таблице T_Ankets не указываю.

После редактирования данных в форме Ankets, отредакатированные данные не отражаются  в форме Ankets_all.

Код делаю такой :


Ankets.proc_upd.StoredProcName := "UPD_ANKETS";
{Ankets.Trans_upd.StartTransaction;} ----> если строку раскоментирую, пишет ошибку : Транзакция активна!
Ankets.proc_upd.UnPrepare;
{заношу в параметры значения}
.....
Ankets.proc_upd.ParamByName("fio").Value :=ankets.fio.Text;
Ankets.proc_upd.ParamByName("name").Value :=ankets.name.Text;
{и тд.}
try
 Ankets.proc_upd.Prepare;
 Ankets.proc_upd.ExecProc;
 Ankets.Trans_upd.Commit;
 Ankets_all.t_Ankets.Refresh;
 Ankets_all.G_ankets.Refresh;
except
  Ankets.Trans_upd.Rollback;
end;
end;

Плиз, помогите, почему данны не хотят обновляться, где моя ошибка ???


 
Yasmin   (2007-06-26 12:30) [1]

хочу, внести уточнение. Данные обновляются, но обновлений сразу не видно. Они становятся видными, при перезаходе в программу.


 
Desdechado ©   (2007-06-26 12:53) [2]

1. Обычно удобно использовать одну читающую и одну пишущую транзакцию.
2. Close-Open может помочь.


 
Yasmin   (2007-06-26 13:02) [3]

делаю   Ankets_all.t_Ankets.close;
          Ankets_all.t_Ankets.open;

вместо Ankets_all.t_Ankets.Refresh .

Данные не хотят обновляться, все изменения видны при перезаходе в программу :(


 
Johnmen ©   (2007-06-26 13:03) [4]

Один раз стартовать тр-ию и далее только CommitRetaining и RollbackRetaining.
Ну и рефреш(перезапрос) конечно....


 
Yasmin   (2007-06-26 13:14) [5]

делаю  
         Ankets_all.t_Ankets.close;
         Ankets_all.t_Ankets.open;

данные ни в какую обновляться в гриде не хотят :((



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

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

Наверх




Память: 0.45 MB
Время: 0.046 c
2-1192122858
Reko
2007-10-11 21:14
2007.11.04
Как можно получить список (дерево) папок и файлов?


3-1183014419
azamatufa
2007-06-28 11:06
2007.11.04
ADO SQL SUM(Field) - ошибка в IDE Access violation ... 1B041FC6


15-1190728528
начинающий
2007-09-25 17:55
2007.11.04
Vista на С:, ХР на D:


15-1190979589
Володя
2007-09-28 15:39
2007.11.04
Сравнение


2-1191994783
fgfh
2007-10-10 09:39
2007.11.04
курсор





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