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

Вниз

Как ускорить вывод данных?   Найти похожие ветки 

 
1008 ©   (2004-09-16 14:08) [0]

В связи с тем, что мою ветку ( Как ускорить или чем развлечь. [D6, D7, FireBird]) удалили создаю новую.

Подключаюсь к базе данных, которая находится на другой машине в сети. Мн необходимо заполнить n полей, которые я создаю динамически (использую TabbednoteBook, на который кладу RichEdit). В поля данные заношу из BLOB-полей при помощи потока. Считывание данных произвожу по одной записи за раз (такой алгоритм работы).  При всём при этом у меня при перемещении между записями (одновременно загружается одна мастер-запись и несколько подчинённых) возникает задержка от 1-й до 5-ти секунд. При чём при формировании отчёта, когда выполняются такие же действия, кроме визуализации, "подтормаживания" нет.
Не подскажите как усорить процесс или что можно показать весёлое пользователю, чтоб он с перепугу ресет не давил?

В ответ на сообщения о непонятности вопроса:

Есть массивы, которые содержат номера записей:
одномерный для номеров из мастер таблицы.
двумерный для номеров из подчинённой таблицы.
При помощи IBQuery из мастер таблицы беру запись (blob) по её идентификатору хранящемуся в массиве, заношу в RichEdit.
Создаю необходимое количество вкладок TabbedNoteBook, на каждую помещаю по RichEdit-у. Поштучно беру из подчинённой таблицы записи в соответствии с идентификаторами указанными в соответствующем масив. Заношу каждую запись в свой RichEdit.

Так понятней?


 
sniknik ©   (2004-09-16 14:25) [1]

самое красочное описание не заменит банального кода.

100% ускорит - откажись (где возможно) от штучных операций... делай блочные.
например запись в RichEdit так поодной и вносиш? надеюсь хоть вывод отключаеш (BeginUpdate)?

p.s. всего остального не понял.


 
1008 ©   (2004-09-16 14:38) [2]

sniknik ©  (16.09.04 14:25) [1]

Э-э-э. Описание понятней поверьте :)

100% ускорит - откажись (где возможно) от штучных операций... делай блочные.
например запись в RichEdit так поодной и вносиш?


Блоками не могу - таков алгоритм.
Ладно, спасибо за содействие. Буду искать способ развлечь юзера.


 
sniknik ©   (2004-09-16 14:43) [3]

> Блоками не могу - таков алгоритм.
не можеш составлять строку вне RichEdit-а? и внести данные разом (или частично но солидными кусками 10-20%)? выкини такой алгоритм.


 
Erik1 ©   (2004-09-16 14:47) [4]

Небывает такогй ситуации когда записи надо тягать по одному,бывает неправильня постановка/реальзация задачи! Привиди задачу полностью.


 
1008 ©   (2004-09-16 15:06) [5]

sniknik ©  (16.09.04 14:43) [3]

Это blob - читаю пишу потоком.
Strem:=CreateBlobStrem(FieldByName(...

Erik1 ©  (16.09.04 14:47) [4]

Патовая ситуация. Как такового задания, постановки задачи, разработки плана и т.д. не было. Были указания шефа - вот это я хочу так, а это так. Если эти ремарки собрать воедино получится набор рекомендации по созданию интерфейса. А всё остальное кривыми ручками: как бог на душу положит.


 
ЮЮ ©   (2004-09-17 02:57) [6]

Попробуй при создании у  RichEdit ставить Visible = false и включай визуализацию при выборе моответствующей страницы TabbednoteBook



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

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

Наверх




Память: 0.46 MB
Время: 0.031 c
1-1096889517
DelphiLexx
2004-10-04 15:31
2004.10.17
Избавится от моргания ListView


4-1095311625
SPeller
2004-09-16 09:13
2004.10.17
Сообщение при смене темы в ХР


9-1087138876
Жора
2004-06-13 19:01
2004.10.17
Перемещние по карте


1-1096962576
gdima
2004-10-05 11:49
2004.10.17
FastReport userfunction


3-1095358722
Volodya_
2004-09-16 22:18
2004.10.17
Позиция ScrollBar-а в DBGrid





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