![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Как ускорить вывод данных? [D6, D7, FireBird]
1008 © (2004-09-16 14:08:00)В связи с тем, что мою ветку ( Как ускорить или чем развлечь. [D6, D7, FireBird]) удалили создаю новую.
Подключаюсь к базе данных, которая находится на другой машине в сети. Мн необходимо заполнить n полей, которые я создаю динамически (использую TabbednoteBook, на который кладу RichEdit). В поля данные заношу из BLOB-полей при помощи потока. Считывание данных произвожу по одной записи за раз (такой алгоритм работы). При всём при этом у меня при перемещении между записями (одновременно загружается одна мастер-запись и несколько подчинённых) возникает задержка от 1-й до 5-ти секунд. При чём при формировании отчёта, когда выполняются такие же действия, кроме визуализации, "подтормаживания" нет.
Не подскажите как усорить процесс или что можно показать весёлое пользователю, чтоб он с перепугу ресет не давил?
В ответ на сообщения о непонятности вопроса:
Есть массивы, которые содержат номера записей:
одномерный для номеров из мастер таблицы.
двумерный для номеров из подчинённой таблицы.
При помощи IBQuery из мастер таблицы беру запись (blob) по её идентификатору хранящемуся в массиве, заношу в RichEdit.
Создаю необходимое количество вкладок TabbedNoteBook, на каждую помещаю по RichEdit-у. Поштучно беру из подчинённой таблицы записи в соответствии с идентификаторами указанными в соответствующем масив. Заношу каждую запись в свой RichEdit.
Так понятней?
ЮЮ (2004-09-17 02:57:00) [1]Попробуй при создании у RichEdit ставить Visible = false и включай визуализацию при выборе моответствующей страницы TabbednoteBook
1008 (2004-09-16 15:06:00) [2]sniknik © (16.09.04 14:43) [3]
Это blob - читаю пишу потоком.
Strem:=CreateBlobStrem(FieldByName(...
Erik1 © (16.09.04 14:47) [4]
Патовая ситуация. Как такового задания, постановки задачи, разработки плана и т.д. не было. Были указания шефа - вот это я хочу так, а это так. Если эти ремарки собрать воедино получится набор рекомендации по созданию интерфейса. А всё остальное кривыми ручками: как бог на душу положит.
Erik1 (2004-09-16 14:47:00) [3]Небывает такогй ситуации когда записи надо тягать по одному,бывает неправильня постановка/реальзация задачи! Привиди задачу полностью.
sniknik (2004-09-16 14:43:00) [4]> Блоками не могу - таков алгоритм.
не можеш составлять строку вне RichEdit-а? и внести данные разом (или частично но солидными кусками 10-20%)? выкини такой алгоритм.
1008 (2004-09-16 14:38:00) [5]sniknik © (16.09.04 14:25) [1]
Э-э-э. Описание понятней поверьте :)
100% ускорит - откажись (где возможно) от штучных операций... делай блочные.
например запись в RichEdit так поодной и вносиш?
Блоками не могу - таков алгоритм.
Ладно, спасибо за содействие. Буду искать способ развлечь юзера.
sniknik (2004-09-16 14:25:00) [6]самое красочное описание не заменит банального кода.
100% ускорит - откажись (где возможно) от штучных операций... делай блочные.
например запись в RichEdit так поодной и вносиш? надеюсь хоть вывод отключаеш (BeginUpdate)?
p.s. всего остального не понял.