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

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

Как вуполнить Refresh одной записи в открытом IBDataSet [D5, IB6.x]


Sergey konuhov ©   (2004-01-19 12:32:00) 

Есть открытый IBDataSet из набора IBX, подключенный к БД под FireBird в котором открыто достаточно большое кол-во записей. БД работает в сети. Перед началом редактирования записи ее требуется пересчитать с сервера. В компоненте есть специальный запрос RefreshSQL. Но он вызывается после Post. Причем не всегда, а по какой то логике. Есть ли способ выполнить запрос, записанный в RefreshSQL, принудительно и поместить полученные данные в локальный буфер данных.Т.е. то, что он и должен делать, только принудительно.


Sergey konuhov   (2004-01-20 15:26:00) [1]

Спасибо. Кажется, работает. И кажется, обновляет только текущую запись. А в IBTable обновляются все записи.
Работает на тестовом примере. Я пробовал, когда-то, и не получилось. Возможно, я пробовал еще с версией IBX 5.03.
Проверял на тестовом примере. Теперь попытаюсь интегрировать в программу. Может там были глюки с параллельными транзакциями.


Deniz   (2004-01-20 07:21:00) [2]

Refresh может работать "криво"(не обновлять данные) если не проставлены параметры транзакции. А в остальном ВСЕ нормально


kaif   (2004-01-19 22:12:00) [3]

2 Sergey konuhov (19.01.04 18:03) [5]
Считается, что метод Refresh должен делать то, что ты хочешь.
MV и Жук уверяют, что так оно и есть. Попробуй их переубедить. Может они и правы. Я боюсь спорить. Версий IBX было много.


Sergey konuhov   (2004-01-19 18:03:00) [4]

Запрос вугледит так
SelectSQL

select * from ...
where <условие>;

/RefreshSQL
select * from ...
where <условие>
and <primary key>=:<значение>;

Запрос кажется работает если произошло изменение и вызывается POST.
Измененные данные обновляются с сервера.

А вот как обратиться к запросу принудительно.
Может просто метод есть, который который я немогу найти в Хелпе.


Жук   (2004-01-19 17:00:00) [5]


> kaif © (19.01.04 15:22) [2]
> С вызовом RefreshSQL в IBX
> какая-то фигня.

Никакой фигни. Всё нормально работает.
Запросы в студию !


MV   (2004-01-19 15:27:00) [6]

Ребятки, а как у Вас выглядят тексты SelectSQL/RefreshSQL вашего IBDataSet? У меня все o"k! И параметры IbDataSet на стол, пожадуста. Можно в виде фрагмента .dfm


kaif   (2004-01-19 15:22:00) [7]

Меня тоже интересует эта тема. С вызовом RefreshSQL в IBX какая-то фигня.


Deniz   (2004-01-19 12:48:00) [8]

А что IBDataSet.Refresh не промогает?


Наверх

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