Como copiar os dados de uma Query para um ClientDataSet?

Delphi

21/02/2008

Olá pessoal, estou trabalhando com banco de dados remoto e gostaria de saber como faz para copiar os dados de uma Query para um ClientDataSet, a a partir deste momento liberar a query deixando todos os dados livres para edição apenas em memória, pelo clientDataSet.Logo após salvar estes dados em bando de dados.

Qual a melhor forma de fazer isso visando uma alta performance?

Desde já agradeço sua atenção.


Joaohenriquemf

Joaohenriquemf

Curtidas 0

Respostas

Ffabiop

Ffabiop

21/02/2008

liga um datasetprovider na sua Query e um clientdataset no datasetprovider. Você pode editar e depois salvar tudo usando um clientdataset.Applyupdates(0) para garvar no banco de dados.


GOSTEI 0
Joaohenriquemf

Joaohenriquemf

21/02/2008

Olá amigos, fiz exatamente como o post acima.
Liguei o DataSetProvider na Query(TZQuery) e a propriedade ´providerName´ no DataSetProvider.

Adicionei todos os fields no clientDataSet e criei o dataset.

Coloquei o SQL na Query, e quando eu abro a Query os dados dela não estão no clientDataSet.Como devo proceder?


GOSTEI 0
Powerlog Tecnologia

Powerlog Tecnologia

21/02/2008

Eu uso assim, em uma função chamada ABRETABELA:


  dmTabelas.qyGridEmprTipl.open;
  pvemppla.DataSet := dmTabelas.qyGridEmprTipl;
  cdsemppla.ProviderName := ´pvemppla´;
  dsemppla.dataset := cdsemppla;
  cdsemppla.Active := true;





GOSTEI 0
Powerlog Tecnologia

Powerlog Tecnologia

21/02/2008

eu ligo tudo ´na mão´ pois o D7 tem uns bugs se deixar ligado direto no form.

pv = provider
ds = datasource
cds = clientdataset
qy = query


GOSTEI 0
Joaohenriquemf

Joaohenriquemf

21/02/2008

Amigo, obrigado pela força deu certo.


GOSTEI 0
Brunolspp

Brunolspp

21/02/2008

no meu link de downloads gratuitos tem uma apostila passo a passo sobre desenvolvimento client/server com Delphi e ClientDataSet usando dbexpress, mas pode usar o Zeos com este exemplo também.

link: http://cc.codegear.com/author/795118

e no mais, estamos as ordens


GOSTEI 0
Joaohenriquemf

Joaohenriquemf

21/02/2008

Valew amigos, deu certo.Obrigado.


GOSTEI 0
POSTAR