Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Delphi: Для новичков > Линейный массив на DataSet'е


Автор: EKoshelev 10.8.2010, 10:12
Понятно, что нормальные люди создают классы, реализующие линейные массивы объектов на базе TList, TObjectList или динамических массивов. Хотелось бы знать можно ли на базе TDataSet реализовать массив элементов (записей там или объектов), не привязываясь при этом к базам данных. Что-то у меня ничего не получилось.

Я использовал TClientDataSet, для начала добавлял в него пять полей. Потом делал:
DBGrid.DataSource := ClientDataSet.DataSource
Он орал, что такое возможно только с открытым датасетом
Я делал DBGrid.Open, он орал, что какого-то провайдера или ещё чего-то (уже не помню).

В общем намекните што делать и куды бечь. Пожалуйста.

Автор: Keeper89 10.8.2010, 11:21
Зачем использовать для 
Цитата(EKoshelev @  10.8.2010,  10:12 Найти цитируемый пост)
классы, реализующие линейные массивы объектов

специфический элемент для БД?

Автор: pseud 10.8.2010, 12:36
Цитата(Keeper89 @  10.8.2010,  11:21 Найти цитируемый пост)
Зачем использовать для
классы, реализующие линейные массивы объектов
специфический элемент для БД?

чтобы через DataSource его подключать к DeveloperExpressTreeList.

Добавлено через 6 минут и 46 секунд
EKoshelev
Боролся я с ClientDataSet и замучил он меня.
Забил я на ClientDataSet и создал наследника от TdxMemData (компонент из сборки DevExpress).
А зачем оно надо?
Просто в прога-клиент получает специфические наборы данных от специфической проги-сервера, писанной на C++.
Эти наборы для нормального использования в проге на дельфи (например подключение к спискам всяким через DataSource) приходится портировать в наследник TDataSet.

Автор: EKoshelev 11.8.2010, 09:46
Блин, сразу "зачем"...
Я конечно и без этого могу обойтись. Просто нужен объект, который этот линейный список часто получает из базы в виде DataSet'а. Или два объекта получают, а потом эти два списка надо как-то не очень хитро обрабатывать. Дак вот если читается тыща-другая записей, то перегон в объекты занимает до нескольких секунд, а так срисовал, обработал и зафрил. Ну и так... удобнее было бы в ряде случаев... Поэтому и спрашиваю.


pseud, TdxMemData, я так понял не типичный класс. Чё-то мне не охота разбираться в нестандартных... Но всё равно спасибо...

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)