Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2004.05.23;
Скачать: [xml.tar.bz2];

Вниз

Чтение данных с MS SQL блоками   Найти похожие ветки 

 
Санёк   (2004-04-28 16:49) [0]

Уважаемые мастера! Подскажите как реализовать чтение данных с MS SQL Server блоками, допустим по 100 записей. Можно ли как то под это заточить ADODataset, чтобы при скроллинге в гриде данные подчитывались с сервера, а не тащились все целиком на клиента. Установка свойства MaxRecords в ADO, или команда Set RowCount в MS SQL позволяет считывать нужное количество записей, но как позиционировать этот блок на другие записи, т.е. реализовать пролистывание вперед, назад например по 100 записей. Можно ли перекрыть методы:
   function GetRecNo: Integer; override;
   function GetRecord(Buffer: PChar; GetMode: TGetMode; DoCheck: Boolean): TGetResult; override;
   function GetRecordCount: Integer; override;
в ADODatasete, если так можно, то какие методы нужно перекрывать еще для правильной работы.


 
Ega23 ©   (2004-04-28 17:32) [1]

А просто ограничить выборку не судьба? Да, должен быть способ получения ВСЕЙ выборки, но реально пользователю требуется получить какие-то КОНКРЕТНЫЕ данные.
Пример моей программы: есть список персонала. Каждый сотрудник характеризуется следующими основными параметрами: ФИО, наличие пропуска, Организация, Подразделение, Статус (Временный/Постоянный). Всего сотрудников - порядка 6000. Данных при всей выборке тянется очень много (запрос - 5 сек.). Но, если ограничить запрос хотя бы Организацией и Подразделением, то макимальный набор записей будет уже не более 400.


 
Санёк   (2004-04-28 17:44) [2]

Дело в том, выборку предпологается помещать в Lookup, и уже по выбору записи, например сотрудника, заполнять автоматически поля организации и подразделения. Подобный Lookup(Zoom) реализован в достаточно распространненой системе ERA Financials, где записи подчитываются по 100.


 
Ega23 ©   (2004-04-28 17:58) [3]

Можно сделать как угодно. Вопрос временных затрат и требований заказчика. Я изложил только пример из собственного опыта. Пользователям нужна стандартная система фильтрации + возможность "расширенного" поиска. Если ты это реализуешь, то мигом избавишься от кучи проблем.


 
Санёк   (2004-04-28 18:52) [4]

Вот - вот как раз вопрс требований заказчика, поносмотрелись на разные ERA Financials и хотят чтоб как там, а как это сделать? Хотя бы в какую сторону идти?


 
Ega23 ©   (2004-04-28 18:55) [5]

Ну, брат, это я - пас. Даже не знаю так сходу...
попробуй заказчика переубедить :о)


 
Курдль ©   (2004-04-28 19:06) [6]


> Можно ли как то под это заточить ADODataset, чтобы при скроллинге
> в гриде данные подчитывались с сервера, а не тащились все
> целиком на клиента.

У TdxDBGrid (от Quantum Grid) в DBOptions есть флаг PartialLoad.
Но тянет ли он частями из базы, или только с датасэта - не проверялось (однако, на миллионе записей шевелится шустро).


 
Ega23 ©   (2004-04-28 19:15) [7]

Кстати о Quantum Grid: у них есть какой-нибудь триал? Чтобы боссу показать, а то он просто так 100 бакинских жмётся выкладывать


 
Санёк   (2004-04-28 19:25) [8]

Триал не знаю, если хочешь полный могу скинуть


 
Курдль ©   (2004-04-28 19:29) [9]


> Кстати о Quantum Grid: у них есть какой-нибудь триал? Чтобы
> боссу показать, а то он просто так 100 бакинских жмётся
> выкладывать

У меня оперативки в жбане не хватает, шоб помнить :)))  Но мы покупали весь набор более, чем за 500 и не разу не пожалели!
Кстати, проблемы автора бы тоже легко решились средствами этого набора. Например, TdxLookupComboEx, так на секундочку, позволяет "вывалить по клику на баттон" не просто голимый список, а целую красивую таблицу с бэндами, многострочными колонками, группировочными кнопками (как аутглюк), сортировкой по полям, контекстным поиском, программируемым фильтром и т.д... устал писать. Мне уж пора от них %% получать за рекламу!


 
Ega23 ©   (2004-04-28 19:31) [10]

Триал не знаю, если хочешь полный могу скинуть

Кидай на egorov@dedal.dubna.ru  Тока если он меньше 10Мб.


 
Санёк   (2004-04-29 09:22) [11]

Он 26,5 MB кидать?

> Кстати, проблемы автора бы тоже легко решились средствами этого набора.

Я всё это уже использую, всё красиво, классно, но таблицка под миллион записей не очень функциональна в этих красивых Lookup, туда бы пару кнопок листания по страничкам, и датасет с этой возможностью. Вот это было бы сила!


 
Ega23 ©   (2004-04-29 10:34) [12]

Он 26,5 MB кидать?
А выложить куда-нибудь можешь? У нас провайдер такое письмо не пропустит


 
Санёк   (2004-04-29 12:12) [13]

давай в трех архивах скину?


 
Ega23 ©   (2004-04-29 12:19) [14]

Давай!


 
Санёк   (2004-04-29 12:42) [15]

А тебе под какую Delphi надо?


 
Ega23 ©   (2004-04-29 12:47) [16]

Delphi 5


 
Санёк   (2004-04-29 13:06) [17]

вот такой то у меня и нету, есть под 6(но старая версия), и совсем свежая под 7


 
Ega23 ©   (2004-04-29 13:09) [18]

Давай тогда под 7


 
tender   (2004-04-29 13:11) [19]

а шо так не получается?!

SELECT TOP 100 *
FROM   Documents WITH d(NOLOKC)
WHERE d.Id > .....


 
Санёк   (2004-04-29 13:15) [20]

а назад как? И что с сортировкой?


 
Ega23 ©   (2004-04-29 14:07) [21]

2 части получил, спасибо. 3-я будет, или в 2 всё поместилось?


 
Ega23 ©   (2004-04-29 14:12) [22]

Все 4 получил, большое спасибо!


 
avgur ©   (2004-04-29 14:40) [23]


> Санёк   (29.04.04 12:42) [15]
> А тебе под какую Delphi надо?


Можно мне скинуть под 6 дельфин, интересно поюзать, слышал много, а потрогать хочится....


 
Санёк   (2004-04-29 14:53) [24]

Пиши мыло


 
avgur ©   (2004-04-29 15:07) [25]


> Санёк   (29.04.04 14:53) [24]
> Пиши мыло


angelcom@a-teleport.com


 
Санёк   (2004-04-29 17:51) [26]

Подскажите кто нибудь хоть какую либо-информацию


 
denik   (2004-04-29 21:58) [27]

> Санёк   (29.04.04 17:51) [26]

Можно мне тоже скинуть компонент?


 
angelcom   (2004-05-01 09:25) [28]


> > Санёк   (29.04.04 12:42) [15]
> > А тебе под какую Delphi надо?
>
>
> Можно мне скинуть под 6 дельфин, интересно поюзать, слышал
> много, а потрогать хочится....


Компанента так и не пришла, может вышлешь????



Страницы: 1 вся ветка

Форум: "Базы";
Текущий архив: 2004.05.23;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.51 MB
Время: 0.042 c
11-1071838359
SAGE
2003-12-19 15:52
2004.05.23
Ошибка: already in skipping mode.


14-1083745962
Artix
2004-05-05 12:32
2004.05.23
системные библиотеки


1-1083749914
Alkmas
2004-05-05 13:38
2004.05.23
Создание TButton из DLL


8-1078954341
ПсихЪ
2004-03-11 00:32
2004.05.23
Как найти точное столкновение...


3-1083055177
Term
2004-04-27 12:39
2004.05.23
MIDAS..... помогите разобраться что я намудрил





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