Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Транзакции [D6, IB6.x]


Belkova ©   (2003-07-04 18:47:00) 

Мастера Delphi! Помогите разобраться, в приложении используется 2 компонента
IBTransaction. Один для просмотра, второй для изменения данных. Параметры
read_committed
rec_version
nowait
Выполняю IBTransaction2.StartTransaction
try
вызовы ХП
IBTransaction2.Commit
except
IBTransaction2.Rollback
end;
В результате происходит изменение данных в некоторой таблице, допустим Price. В это же время таблица Price просматривается IBTransaction1.StartTransaction
Price.Open;
IBTransaction1.Commitretaining
Если не переоткрыть набор данных, связанный с Price после
принятия изменений, то никаких изменений не отображается, хотя на самом деле данные изменились.
И второе, если запустить 2 версии приложения,
после изменений в первом приложении, даже если набор данных переоткрыть,
то во втором все равно не видно изменений, пока не переоткроешь и там.
Мне нужно, чтобы изменения прошли и все версии приложения это сразу увидели.
Как это сделать? Заранее благодарна.
P.S. Можно поставить таймер, и проблема снимается ,
но насколько сильно это нагружает сервер?


koks   (2003-07-07 13:11:00) [1]

Еще можно использовать Events на сервере.


Alexandr   (2003-07-05 13:23:00) [2]

Естественно. Так и должно быть
Так и надо делать.
Просто не надо светить большую таблицу постоянно перед глазами юзера, да еще и корректировать ее находу.
Неможет юзер увоить весь такой поток информации, особенно если его и нет за компьютером.
Поставть кнопку "обновить данные" и все.


Наверх

Титульная страница Поиск, карта сайта Написать письмо