Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.11.21;
Скачать: CL | DM;

Вниз

список значений поля   Найти похожие ветки 

 
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;
Скачать: CL | DM;

Наверх




Память: 0.51 MB
Время: 0.031 c
3-1098888430
NATA
2004-10-27 18:47
2004.11.21
Qreport


4-1097047601
UNIVERSAL
2004-10-06 11:26
2004.11.21
Как определить используется ли файл другим приложением?


9-1090802077
Xerx
2004-07-26 04:34
2004.11.21
Экспорт модели


14-1099743026
BoS | Snake
2004-11-06 15:10
2004.11.21
Народ , неед хелп , кто в Lisp шарит...


14-1099486160
Shiza
2004-11-03 15:49
2004.11.21
Total Commander