Comments on: Copying data from ClientDataSet to DBXReader http://www.andreanolanusse.com/en/copying-data-from-clientdataset-to-dbxreader/ Where Andreano Lanusse talk about technology, software development, programming techniques, databases, games and more through articles, tutorials and videos Mon, 23 Sep 2013 23:10:09 +0000 hourly 1 https://wordpress.org/?v=6.3.4 By: Rômulo http://www.andreanolanusse.com/en/copying-data-from-clientdataset-to-dbxreader/#comment-11775 Mon, 23 Sep 2013 23:10:09 +0000 http://www.andreanolanusse.com/en/?p=493#comment-11775 Boa noite. Estou fazendo alguns testes utilizado o delphi XE3. Fiz um método que retorna um conjuntos de dados TDBXReader. No lado cliente preciso exibir esses dados num grid. Li que existe um método chamado CopyReaderToDataSet que faz a copia da estrutura/dados para um dataSet, mas não encontrei esse método no delphi XE3. Tenho o Delphi 2010 onde nele aparece. Alguém sabe dizer se ele foi retirado?

]]>
By: Jofan http://www.andreanolanusse.com/en/copying-data-from-clientdataset-to-dbxreader/#comment-11652 Wed, 22 May 2013 17:28:08 +0000 http://www.andreanolanusse.com/en/?p=493#comment-11652 Boas, Andreano
Acompanho os seus post e relativamente, à conversão DBXReader para ClientDataSet, no delphi XE3 não funciona?!!!!
TDBXDataSetReader.CopyReaderToClientDataSet, metodo não existe!
Pode me ajudar?
Obrigado

]]>
By: TDBXJsonTools copy/convert data between TDataSet - TJSONObject - DBXReader | Andreano Lanusse | Technology and Software Development | Delphi, FireMonkey http://www.andreanolanusse.com/en/copying-data-from-clientdataset-to-dbxreader/#comment-10955 Tue, 31 Jul 2012 20:19:12 +0000 http://www.andreanolanusse.com/en/?p=493#comment-10955 […] ClientDataSet and vice-versa using dbxExpress framework, you probably already read some of my blog posts where I explain how it works in desktop applications, however in mobile platforms we don’t […]

]]>
By: Júlio César Ferreira (@jcmferreira) http://www.andreanolanusse.com/en/copying-data-from-clientdataset-to-dbxreader/#comment-10338 Mon, 16 Jan 2012 12:33:53 +0000 http://www.andreanolanusse.com/en/?p=493#comment-10338 BOA NOVA!

No novo projeto criado, realizei outro teste e dessa vez funcionou! Houve confusão da minha parte na determinação do CopyReaderToClientDataSet e ToClientDataSet.

O Delphi, porém, sempre exibe o resultado do TDBXDataSetReader.Create como (nil,nil), oq gera alguma confusão na hora de realizar o debug da implementação.

Obrigado pela força.
Solução funcionando!

]]>
By: Júlio César Ferreira (@jcmferreira) http://www.andreanolanusse.com/en/copying-data-from-clientdataset-to-dbxreader/#comment-10337 Mon, 16 Jan 2012 11:19:34 +0000 http://www.andreanolanusse.com/en/?p=493#comment-10337 Desculpe Andreano.

A solução simplesmente não funciona! Executei um projeto novo com nada além do código para criar o DBXReader e mesmo assim, sempre retorna (nil,nil)

Não sei se existe alguma influência mas, minha versão é a Embarcadero® Delphi® XE Version 15.0.3890.34076.

]]>
By: Júlio César Ferreira (@jcmferreira) http://www.andreanolanusse.com/en/copying-data-from-clientdataset-to-dbxreader/#comment-10331 Fri, 13 Jan 2012 18:35:21 +0000 http://www.andreanolanusse.com/en/?p=493#comment-10331 Apenas para testes, reduzi toda a implementação do método para oq está abaixo. Mas continua dando o mesmo problema:

function TServerModuleEmpresa.GetUserCompanies(idUsuario: Integer; isMaster, isAdmin: Boolean): TDBXReader;
begin

CDSEmpresas := CreateCDSEmpresas;

// CDSEmpresas é um TClientDataSet com 4 registros...

result := TDBXDataSetReader.Create( CDSEmpresas, False );

end;

result sempre retorna (nil,nil)

]]>
By: Júlio César Ferreira (@jcmferreira) http://www.andreanolanusse.com/en/copying-data-from-clientdataset-to-dbxreader/#comment-10330 Fri, 13 Jan 2012 18:23:56 +0000 http://www.andreanolanusse.com/en/?p=493#comment-10330 Entendi @Andreano mas não se preocupe…

Quando o código chega nesta linha abaixo, o conteúdo de CDSEmpresas está definido de forma correta…

result := TDBXDataSetReader.Create( CDSEmpresas, False );

A linha builder.destroy é referente a minha classe de consultas ao banco de dados e não possui ligação com o ClientDataSet.

Não sei se ajudaria mas, nesse fórum tenho todo o código do servidor e do cliente para vc entender melhor: http://www.activedelphi.com.br/forum/viewtopic.php?p=366776#366776

]]>
By: Andreano Lanusse http://www.andreanolanusse.com/en/copying-data-from-clientdataset-to-dbxreader/#comment-10329 Fri, 13 Jan 2012 18:20:29 +0000 http://www.andreanolanusse.com/en/?p=493#comment-10329 In reply to Júlio César Ferreira (@jcmferreira).

@Julio, eu não sei o que o método builder.destroy está fazendo, suponho que você esteja destruindo algo que não deveria até que a informação seja enviada, veja os exemplos que disponibilizei de DataSnap

]]>
By: Júlio César Ferreira (@jcmferreira) http://www.andreanolanusse.com/en/copying-data-from-clientdataset-to-dbxreader/#comment-10328 Fri, 13 Jan 2012 18:14:33 +0000 http://www.andreanolanusse.com/en/?p=493#comment-10328 Quando você diz que estou destruindo o reader, seria no CDSEmpresas.Free?
Pq já realizei um teste removendo essa linha e mesmo assim, o conteúdo de result é (nil, nil)

A já agradeço a atenção e a ajuda! =)

]]>
By: Andreano Lanusse http://www.andreanolanusse.com/en/copying-data-from-clientdataset-to-dbxreader/#comment-10327 Fri, 13 Jan 2012 18:09:57 +0000 http://www.andreanolanusse.com/en/?p=493#comment-10327 @Julio, você está destruindo o Reader e não pode, o DataSnap irá fazer isso pra você depois que retornar todo o conteúdo para o cliente

]]>
By: Júlio César Ferreira (@jcmferreira) http://www.andreanolanusse.com/en/copying-data-from-clientdataset-to-dbxreader/#comment-10326 Fri, 13 Jan 2012 18:07:03 +0000 http://www.andreanolanusse.com/en/?p=493#comment-10326 Nenhuma até sair da aplicação servidor, nenhuma exception Andreano. O código que estou tentando é este:

function TServerModuleEmpresa.GetUserCompanies(idUsuario: Integer; isMaster, isAdmin: Boolean): TDBXReader;

function CreateCDSEmpresas: TClientDataSet;
var
cdsFieldPos: Integer;
cdsTable: TNewTable;
begin

result := TClientDataSet.Create( Self );

{ ... include some fields to result by result.FieldDefs.Add() ... }

result.CreateDataSet;

end;

var
CDSEmpresas: TClientDataSet;
begin

CDSEmpresas := CreateCDSEmpresas;

builder := GetPreparedBuilder;

builder.Open;

while not builder.Dataset.Eof do
begin

CDSEmpresas.Append;

for pos := 0 to builder.Dataset.FieldCount - 1 do
if CDSEmpresas.FindField( builder.Dataset.Fields[pos].FieldName ) nil then
CDSEmpresas.FieldByName( builder.Dataset.Fields[pos].FieldName ).Value := builder.Dataset.Fields[pos].Value;

CDSEmpresas.Post;

builder.Dataset.Next;

end;

{ ** Definindo o retorno do método ** }
result := TDBXDataSetReader.Create( CDSEmpresas, False );

CDSEmpresas.Free;

builder.Destroy( True );

end;

]]>
By: Andreano Lanusse http://www.andreanolanusse.com/en/copying-data-from-clientdataset-to-dbxreader/#comment-10325 Fri, 13 Jan 2012 17:51:50 +0000 http://www.andreanolanusse.com/en/?p=493#comment-10325 In reply to Júlio César Ferreira (@jcmferreira).

@Julio,

Não vejo o porque deste erro, está retornando alguma exception?

]]>
By: Júlio César Ferreira (@jcmferreira) http://www.andreanolanusse.com/en/copying-data-from-clientdataset-to-dbxreader/#comment-10324 Fri, 13 Jan 2012 14:44:26 +0000 http://www.andreanolanusse.com/en/?p=493#comment-10324 Bom dia Andreano!

O TDBXDataSetReader.Create(ClientDataSet, False (* InstanceOwner *) ) é muito bom mas, está sempre retornando nil quando tento utilizá-lo.

No meu caso, o ClientDataSet é temporário, via método CreateDataSet.

Existe alguma coisa a mais para se fazer?
Obrigado.

]]>
By: CopyReaderToClientDataSet, Blob and the message “Feature not implemented” | Andreano Lanusse Blog | Technology and Software Development | C++Builder http://www.andreanolanusse.com/en/copying-data-from-clientdataset-to-dbxreader/#comment-9670 Fri, 04 Nov 2011 00:25:28 +0000 http://www.andreanolanusse.com/en/?p=493#comment-9670 […] […]

]]>
By: Tweets that mention Copying data from ClientDataSet to DBXReader | Andreano Lanusse Blog | Technology and Software Development -- Topsy.com http://www.andreanolanusse.com/en/copying-data-from-clientdataset-to-dbxreader/#comment-6728 Tue, 22 Feb 2011 01:11:10 +0000 http://www.andreanolanusse.com/en/?p=493#comment-6728 […] This post was mentioned on Twitter by Andreano Lanusse, Adriano Santos. Adriano Santos said: RT @andreanolanusse: New blog post: Copying data from ClientDataSet to DBXReader http://bit.ly/hapW9E […]

]]>