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

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

Как убрать ненужный "Locate"? [FireBird]


Punch ©   (2005-08-09 20:17:00) 

Использую библиотеку FIBPlus. Если есть RefreshSQL, то после обновления набора данных, курсор встает на запись, на которой был до закрытия набора(что и затормаживает обновление), если RefreshSQL отсутствует, то все гут(обновление быстро). Как убрать ненужный "Locate", кто сталкивался с подобным, подскажите.


Виталий Панасенко   (2005-08-11 14:50:00) [1]

FullRefresh так и работает, позициониует (пытается) на ту запись, на которой был указатель НД...Версия FIBPlus  какая ? Если 6,0 и выше, попробуй включить для DataSetа CacheModelOption-CacheModelKind=cmkLimitedBufferSize. С этой установкой даже на больших НД перемещение довольно шустрое...Правда, нужно соблюдать некоторые правила, опсанные в Readme


Polevi   (2005-08-11 09:47:00) [2]

>Anatoly Podgoretsky ©   (10.08.05 15:58) [8]
не делается, особенно если по нескольким полям и размер выборки приличный


Deniz   (2005-08-11 08:00:00) [3]

>Punch   (10.08.05 16:17) [10]
>перешел с FullRefresh на CloseOpen и все прошло.

Ты бы еще и реконнект делал :-)
Для правильного решения проблемы, все таки нужно код приводить, а то здешний телепат в отпуске.


yk   (2005-08-10 16:25:00) [4]


> Punch   (10.08.05 16:17) [10]

Так неинтересно :(((


Punch   (2005-08-10 16:17:00) [5]

перешел с FullRefresh на CloseOpen и все прошло.


yk   (2005-08-10 16:00:00) [6]

Напиши свой RefreshSQL
пожалуйста :)


Anatoly Podgoretsky   (2005-08-10 15:58:00) [7]

Punch   (10.08.05 15:15) [4]
Делается, ты даже охнуть не успеешь, не путай выборку с перемещением по этой выборке


Punch   (2005-08-10 15:37:00) [8]


> Обрати внимание на [3].

Процедура на 100% возвращает 1 запись.

Мне не нужен ни фетч ни локейт, но когда есть RefreshSQL, то происходит локейт!


Sergey13   (2005-08-10 15:18:00) [9]

2[4] Punch   (10.08.05 15:15)
> Если 10 000 записей, то Locate мгновенно не делается
Это фетч мгновенно не делается, а за локейтом не поспеешь. 8-)
Обрати внимание на [3]. Мне тоже кажется что проблема в этом, хоть в ФИБами я и не работал.


ANB   (2005-08-10 15:17:00) [10]


> Punch   (10.08.05 15:15) [4]

1) так и выборка мгновенно не делается.
2) Найти Locate в исходниках компонента и закоментить его.


Punch   (2005-08-10 15:15:00) [11]


> Anatoly Podgoretsky

Если 10 000 записей, то Locate мгновенно не делается


> ANB

Что имеено закоментировать?


Deniz   (2005-08-10 15:07:00) [12]

RefreshSQL, если правильно написан, должен обновлять только 1 текущую запись.


ANB   (2005-08-09 20:56:00) [13]


> Punch   (09.08.05 20:17)
- если есть исходники - закомментируй и проверь что получилось.


Anatoly Podgoretsky   (2005-08-09 20:44:00) [14]

Locate работает практически мгновенно.


Наверх

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