Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Проблема ClientDataSet

323
07 июля 2004 года
Sergun
228 / / 20.09.2000
Народ.. подскажите как грамотно работать с ClientDataSet->LoadFromStream...

Делаю:
TMemoryStream *a = new TMemoryStream ();
....
ClientDataSet1->LoadFromStream(a);
delete a;

Вылетает ошибка:
Missing data provider or data packet

в чем проблема?

P.S. ClientDataSet1->LoadFromFile рабоатет замечательно:)
310
07 июля 2004 года
fellow
853 / / 17.03.2003
В справке по TClientDataSet::LoadFromStream написано, что поток должен содержать данные во внутреннем формате датасета, например, записанные туда методом SaveToStream другого датасета. А SaveToSream, в свою очередь, может работать как с двоичным форматом пакетов данных, так и с XML-форматом.
Так что если ошибка "Missing data provider or data packet", то или XML глючит, либо при записи потока косяк произошёл.
323
07 июля 2004 года
Sergun
228 / / 20.09.2000
Цитата:
Originally posted by fellow
В справке по TClientDataSet::LoadFromStream написано, что поток должен содержать данные во внутреннем формате датасета, например, записанные туда методом SaveToStream другого датасета. А SaveToSream, в свою очередь, может работать как с двоичным форматом пакетов данных, так и с XML-форматом.
Так что если ошибка "Missing data provider or data packet", то или XML глючит, либо при записи потока косяк произошёл.



возможно... НО, я пошел дальше...
создал ClientDataSet1, туда загрузил какие то данные, потом:

TMemoryStream *st = new TMemoryStream ();

ClientDataSet1->SaveToStream(st);
ClientDataSet2->LoadFromStream(st);

delete st;

эффект тот же :{

310
07 июля 2004 года
fellow
853 / / 17.03.2003
Цитата:
Originally posted by Sergun


возможно... НО, я пошел дальше...
создал ClientDataSet1, туда загрузил какие то данные, потом:

TMemoryStream *st = new TMemoryStream ();

ClientDataSet1->SaveToStream(st);
ClientDataSet2->LoadFromStream(st);

delete st;

эффект тот же :{



ClientDataSet1->SaveToStream(st) - это хорошо, а спецификация формата какая?
ClientDataSet1->SaveToStream(st,dfXML) - например.

272
07 июля 2004 года
vladsoft
512 / / 20.08.2000
Цитата:
Originally posted by fellow


ClientDataSet1->SaveToStream(st) - это хорошо, а спецификация формата какая?
ClientDataSet1->SaveToStream(st,dfXML) - например.


точно в десятку, только мы еще забыли про позицию, но сейчас вроде разгребли ...Спасиб:)

Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог