Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.03.09;
Скачать: CL | DM;

Вниз

Как сохранить данные из ClientDataSet в некоторый файл   Найти похожие ветки 

 
x_x_x   (2004-02-11 13:40) [0]

про SaveToFile... известно, но двоичный файл или xml не интересует. Нужно сохранить локально ввиде таблицы БД (какой БД - не важно, важен сам принцип)?


 
asp ©   (2004-02-11 15:38) [1]

Всё бы на готовенькое... :)
Можно примерно так:

procedure CopyDataRecord(const Source, Dest: TDataSet);
var
i: Integer;
f: TField;
begin
for i:= 0 to Source.Fields.Count - 1 do
begin
f:= Dest.Fields.FindField(Source.Fiels[i].FieldName);
if Assigned(f) then
f.AsVariant:= Source.Fields[i].AsVariant
end
end;

procedure CopyData(const SourceClientDataSet: TClientDataSet;
const DestTable: TTable);
var
b: TBookMark;
begin
b:= SourceClientDataSet.GetBookMark;
try
SourceClientDataSet.DisableControls;
SourceClientDataSet.First;
while not(SourceClientDataSet.Eof) do
begin
DestTable.Append;
CopyDataRecord(SourceClientDataSet, DestTable);
DestTable.Post;
SourceClientDataSet.Next
end
finally
if SourceClientDataSet.BookMarkValid(b) then
begin
SourceClientDataSet.GotoBookMark(b);
SourceClientDataSet.FreeBookMark(b)
end;
SourceClientDataSet.EnableControls
end
end;

Затем создать таблицу like ClientDataSet & call CopyData (неужели и это писать?)...



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

Текущий архив: 2004.03.09;
Скачать: CL | DM;

Наверх




Память: 0.46 MB
Время: 0.019 c
14-25912
blackweber
2004-02-16 00:25
2004.03.09
Размер файла с++


14-25907
Grugan
2004-02-10 19:32
2004.03.09
WinInet функции


3-25701
guest_Dmitry
2004-02-10 16:28
2004.03.09
MS Jet + XP - кривые руки или глюк?


3-25688
stud
2004-02-06 11:54
2004.03.09
обработка ошибок interbse


14-25865
svin666
2004-02-16 15:56
2004.03.09
Цены за работу