Форум: "Базы";
Текущий архив: 2004.11.21;
Скачать: [xml.tar.bz2];
Внизсписок значений поля Найти похожие ветки
← →
Vir (2004-10-19 18:05) [0]Как получить все значения поля из Table не премащая курсор? А то используя next перерисовываються все визуальные контролы что тормозит процесс.
← →
Johnmen © (2004-10-19 18:36) [1]Никак.
DisableControls+F1
← →
Vir (2004-10-19 18:42) [2]А DataSet их тогда от куда получает?
уверен что должен быть буфер записей.
← →
Vir (2004-10-19 18:43) [3]точнее DataSource
← →
Ega23 © (2004-10-19 18:43) [4]Гм... DataSet и есть тот буфер записей...
← →
Vir (2004-10-19 18:47) [5]Гм... DataSet и есть тот буфер записей...
Вот именно TTable и есть он - так как от туда получть все записи разом в какой либо свой буфер.
← →
Ega23 © (2004-10-19 18:48) [6]Ну как... First, While not Eof, Next ...
← →
Ega23 © (2004-10-19 18:49) [7]А нафиг?
← →
Vir (2004-10-19 19:11) [8]Ну а грид - он же прорисовывет содержимое не перемещая курсора, значит есть возможность получать не только текущую запись.
А нафиг? - да думаю что так по быстрее будет.
← →
Ega23 © (2004-10-19 19:12) [9]Быстрее чем что?
← →
Vir (2004-10-19 19:17) [10]Быстрее работать со своим буфером чем перемещаться через next
← →
Ega23 © (2004-10-19 19:20) [11]Ну создай массив данных, зафигач в него все записи из датасета после открытия и работай с ним.
Только как ты визуальными контролами при этом пользоваться будешь?
← →
Vir (2004-10-19 19:27) [12]В том то и дело что в некоторый момент есть неоходимость исправить все значения одного поля.
Но посколько на таблицу завязанно еще несколько Query через master-detail- при перемецении по записям все они начинаю перечитывать базу и соответсвенно перерисовать свои визуальные компоненты это очень сильно ест время.
Было бы идеально пройтись по записям и потом все котролы один раз пречитать.
← →
Ega23 © (2004-10-19 19:31) [13]см. Johnmen © (19.10.04 18:36) [1]
← →
ЮЮ © (2004-10-20 03:00) [14]>Ну а грид - он же прорисовывет содержимое не перемещая курсора
У грида для этих целей есть свой буфер - DataLink - но содержит он только те записи, которые видны в гриде
← →
Sergey13 © (2004-10-20 09:40) [15]2[12] Vir (19.10.04 19:27)
>В том то и дело что в некоторый момент есть неоходимость исправить все значения одного поля
Может в этом случае выгоднее выполнить отдельный модифицирующий это поле запрос? И переоткрыть исходный датасет.
← →
msguns © (2004-10-20 10:10) [16]>Vir (19.10.04 19:27) [12]
>В том то и дело что в некоторый момент есть неоходимость исправить все значения одного поля.
Но посколько на таблицу завязанно еще несколько Query через master-detail- при перемецении по записям все они начинаю перечитывать базу и соответсвенно перерисовать свои визуальные компоненты это очень сильно ест время.
Было бы идеально пройтись по записям и потом все котролы один раз пречитать.
Тяжелое наследие таблизма.. Меняем данные только его методами, линкуемся через Master-Detail.. Запросы, вынос логики из клиента на сервер - это все для А.С.Пушкина.
← →
Draught © (2004-10-20 10:29) [17]У
DBGrid
свойствоDataSource
, можно на время манипуляций, которые не нужно видеть, менять значение этого поля на пустое, а после всех манипуляций заново дописыватьDM.DATASource1
← →
msguns © (2004-10-20 10:53) [18]>Draught © (20.10.04 10:29) [17]
>У DBGrid свойство DataSource, можно на время манипуляций, которые не нужно видеть, менять значение этого поля на пустое, а после всех манипуляций заново дописывать DM.DATASource1
Все верно, но.. Если по каким-то причинам состав или последовательность полей датасета, указанного в датасорсе, изменилось, то грид может "подвесить" приложение. Чтобы этого не было, надо после "обнуления" указателя на датасорс делать колонкам грида Columns.Clear, а после присвоения выполнять метод
Columns.RebuildColumns. Правда, все геометрические изменения, сделанные узером, весело гавкнуться, но это уже несколько другая история ;)
← →
Draught © (2004-10-20 11:09) [19]
> msguns © (20.10.04 10:53) [18]
> Правда, все геометрические изменения,
> сделанные узером, весело гавкнуться, но это уже несколько
> другая история ;)
Да и пофик-то... главное не видно, что программа делает и делает быстро... А если геометрические изменения очень важны, то их можно сохранять, а потом подгружать... :)))))
← →
Ega23 © (2004-10-20 11:14) [20]Да и пофик-то... главное не видно, что программа делает и делает быстро... А если геометрические изменения очень важны, то их можно сохранять, а потом подгружать... :)))))
... и уйдёт на это времени больше, чем на рефреш датасета
Страницы: 1 вся ветка
Форум: "Базы";
Текущий архив: 2004.11.21;
Скачать: [xml.tar.bz2];
Память: 0.49 MB
Время: 0.05 c