Главная страница
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.014 c
1-25750
OlimPer
2004-02-26 17:39
2004.03.09
mainmenu


3-25706
User_OKA
2004-02-09 10:30
2004.03.09
FibDataSet


1-25767
Alexis
2004-02-26 15:27
2004.03.09
Win элементы в Turbo Pascal и Free Pascal


14-25863
ChuhCan
2004-02-16 22:04
2004.03.09
Загрузчик с дискеты.


4-25969
[ SAIMON ]
2004-01-03 01:18
2004.03.09
Помогите по SysTrey ю...