Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Вопрос про Quantum Grid [D7]


Sedunov Vitaly ©   (2003-07-06 13:07:00) 

Что можно использовать в качестве источника данных для Quantum Grid? Кроме TTable, который ссылается на таблицу на локальном диске у меня ничего не получается. Ни ADOTable, ни ADODataSet не работают как надо. Может быть, я что-то не так делаю или Quantum Grid для этого не предназначен?


koks   (2003-07-07 14:00:00) [1]

МОЖНО !

Вся феня в том, что для того чтобы тебе пользоваться всей крутизной QG у тебя должено быть:
1. LoadAllRecords. (Грид будет закачивать ВЕСЬ набор на клиент, плюс еще тасовать его в пямяти. Во всех руководствах написано, что это существенно замедляет работу, особенно если возвращаемый набор - большой - несколько тыс. записей.)

2. Ключевое поле должно быть указазано в КеуFields. По нему QG производит синхронизацию набора "в пямяти" с реальным набором, подключенным через TDataSourse. Отсутствие этого свойства или его неуникальность - типичная причина неправильного поведения грида в виде "зависания" или переполнения.

Короче - или LoadAllRecords - тормоза - большой расход пямяти - никакой порционной подкачки - но зато автоматическая сортировка-группировка-фильтрация

Или не LoadAllrecords - тогда порционная подкачка и все такое (KeyFialds все равно должен быть установлен). но сортировку-группировку-фильтрацию придется делать ручками - обрабатывая различные события грида..... Вообщк смотри примеры - там усе описано.


Sedunov Vitaly   (2003-07-07 13:29:00) [2]

Версия грида 3.2. Ошибка с переполнением была при порционной подкачке, но без таковой работает приблизительно в 2,5 раза медленнее, чем стандартный грид. Ключевое поле есть. На сервере оно Primary Key. Что значит ключевое поле должно быть? Если я буду использовать TQuery мне индексы обязательно надо будет строить перед использованием в QuantumGrid? Но основной выпрос мой следующий: можно ли использовать ADODataSet в качестве источника данных и пользоваться всеми прелестями Quantum Grid или нет?


koks   (2003-07-07 13:20:00) [3]


1. Какой QGrid (3.2 или 4.X)

2. Какой режим работы (LoadAllRecords или GridMode)

3. Проверь правильность использования ключа (ключевое поле должно быть !!)


Fay   (2003-07-07 13:05:00) [4]

А все записи загружаются в грид?


Sedunov Vitaly   (2003-07-07 12:24:00) [5]

Насчет любого наследника: поэкспериментировал с ADODataSet, в котором поле varchar(1000) - вылетел глюк с переполнением. Ну это не очень большая беда. При использовании даже ADOTable не работает группировка, сортировка и т.д. Хотя брал пример, менял ID поле, менял набор колонок - т.е. вроде бы все делал как следует. Где я мог ошибиться?


Fay   (2003-07-07 12:16:00) [6]

>> не работают как надо
Как надо?


kravchuk   (2003-07-07 12:14:00) [7]

Любой наследник от TDataSet


Наверх

Титульная страница Поиск, карта сайта Написать письмо