Streams e Componentes TDataSet
Pessoal, como é que faço para gravar em um Stream, um componente dataset??
Set que com clientdataset basta fazer assim:
ClientDataset.SaveToStream( stream )...
mas é com qualquer tipo de dataset (usando o tipo TDataset mesmo)???
Set que com clientdataset basta fazer assim:
ClientDataset.SaveToStream( stream )...
mas é com qualquer tipo de dataset (usando o tipo TDataset mesmo)???
Thomaz_prg
Curtidas 0
Respostas
_rodfaria_
11/09/2005
Baseado no código de http://tinyurl.com/9o6s3
O exemplo usa SaveToFile, mas a lógica é a mesma para SaveToStream.
GravaXML(Table1,´c:\lixo\tabela.xml´);
procedure GravaXML(d:TDataset;arq:string);
var
c:TClientDataSet;
p:TDataSetProvider;
begin
c:=TClientDataSet.Create(nil);
p:=TDataSetProvider.Create(nil);
try
p.DataSet:=d;
c.Data:=p.Data;
c.SaveToFile(arq,dfXML);
finally
c.Free;
p.Free;
end;
end;
Obs: uses db,dbclient,provider;
Rod.
O exemplo usa SaveToFile, mas a lógica é a mesma para SaveToStream.
GravaXML(Table1,´c:\lixo\tabela.xml´);
procedure GravaXML(d:TDataset;arq:string);
var
c:TClientDataSet;
p:TDataSetProvider;
begin
c:=TClientDataSet.Create(nil);
p:=TDataSetProvider.Create(nil);
try
p.DataSet:=d;
c.Data:=p.Data;
c.SaveToFile(arq,dfXML);
finally
c.Free;
p.Free;
end;
end;
Obs: uses db,dbclient,provider;
Rod.
GOSTEI 0