Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 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
3-1097314929
Ceval
2004-10-09 13:42
2004.11.21
разные скорости открытия DBFview ом и моей программой


1-1100077166
StarCon
2004-11-10 11:59
2004.11.21
Refresh RxDBGrid


1-1099738462
Lamer v0.000001
2004-11-06 13:54
2004.11.21
TCombobox


3-1098431394
Andrey_
2004-10-22 11:49
2004.11.21
Перегенерация индексов


14-1099707837
Fktrc
2004-11-06 05:23
2004.11.21
Консольные утилиты





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