|
Медленный Grid на большой таблице под фильтром
|
|||
---|---|---|---|
#18+
Здравствуйте. При переводе приложения с Foxpro2.6 DOS под VFP выяснилось, что Grid работает очень медленно и сильно грузит процессор при листании таблицы с большим числом записей (1-2 млн) и с установленным фильтром. Хотя в том-же VFP да и в Foxpro2.6 DOS на этой-же таблице под тем-же фильтром все нормально. Можно как-то оптимизировать работу Grid ? Индекс на поле фильтра имеется, удаленные записи не причем. ... |
|||
:
Нравится:
Не нравится:
|
|||
05.12.2011, 20:46 |
|
Медленный Grid на большой таблице под фильтром
|
|||
---|---|---|---|
#18+
Игорь_МЗдравствуйте. При переводе приложения с Foxpro2.6 DOS под VFP выяснилось, что Grid работает очень медленно и сильно грузит процессор при листании таблицы с большим числом записей (1-2 млн) и с установленным фильтром. Хотя в том-же VFP да и в Foxpro2.6 DOS на этой-же таблице под тем-же фильтром все нормально. Можно как-то оптимизировать работу Grid ? Индекс на поле фильтра имеется, удаленные записи не причем. Оптимизируйте приложение. Накой в грид выводить 1-2 млн. записей, да еще и с фильтром. Существуют запросы SQL и Cursor Adapter. Коль уж переводите приложение под VFP, так и используйте соответствующие возможности. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.12.2011, 09:51 |
|
Медленный Grid на большой таблице под фильтром
|
|||
---|---|---|---|
#18+
Игорь_МИндекс на поле фильтра имеется, удаленные записи не причем. Возможно индекс не используется, например, если индекс создан при SET COLLATE "MACHINE" а текущая SET COLLATE "RUSSIAN" Поизучай SET KEY TO ... Количество записей на скорость работы самого грида никак не влияет, тормозит считывание из файла. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.12.2011, 10:21 |
|
Медленный Grid на большой таблице под фильтром
|
|||
---|---|---|---|
#18+
set filter - это одна из командочек, которую нужно стараться не использовать сам считаю - для лентяев, и использовал и (ую, уже совсем изредка), когда лениво кодить. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.12.2011, 10:22 |
|
Медленный Grid на большой таблице под фильтром
|
|||
---|---|---|---|
#18+
Если речь идет о VFP9, то установи настройку Код: plaintext 1.
Эта настройка включает Rushmore-оптимизацию для SET FILTER внутри Grid Хотя, разумеется, согласен с остальными, что SET FILTER - это "затычка". Нечто, сделанной "по быстрому", только чтобы пользователи отстали. При дальнейшем развитии приложения от нее все-равно придется отказаться. Слишком она сложна в сопровождении и недостаточно гибкая. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.12.2011, 11:14 |
|
Медленный Grid на большой таблице под фильтром
|
|||
---|---|---|---|
#18+
ВладимирМЕсли речь идет о VFP9, то установи настройку Код: plaintext 1.
Спасибо огромное! Я уж думал на @ get и Browse делать :) P.S. Новое приложение я наверное сразу под SQL стал-бы делать, или среду разработки выбрал бы другую. А переводить старое, 15 лет писавшееся - тяжеловато. Да и заказчик хочет, чтобы новое было похоже на старое, и побыстрее. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.12.2011, 14:23 |
|
|
start [/forum/topic.php?fid=41&gotonew=1&tid=1583965]: |
0ms |
get settings: |
11ms |
get forum list: |
14ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
44ms |
get topic data: |
13ms |
get first new msg: |
8ms |
get forum data: |
3ms |
get page messages: |
58ms |
get tp. blocked users: |
2ms |
others: | 254ms |
total: | 415ms |
0 / 0 |