Criando objeto do tipo TClientDataset

Delphi

02/11/2006

Pessoal

Em um evento estou criando um objeto do tpo TClientDataset. Então fiz assim:

var QrContReg : TClientDataset;
begin

Try
QrContReg := QrContReg.Create(application);

QrContReg.Close;
QrContReg.CommandText := ´Select * from CLIENTE_FORNECEDOR CF´;
QrContReg.Open;

edTotalRegAnt.Text := Inttostr(QrContReg.RecordCount);
Finally
FreeAndNil(QrContReg);
end;

O problema é que da erro em execução na linha

QrContReg := QrContReg.Create(application)

Informa que um objeto FRMCONSULTA_1 já existe. Na realidade ele entendo o application como o form, estou criando o QrCOntREG
Já tentei usar Nil mas não deu.


Eu posso criar um objeto em tempo de execução ou teria que colocar um componente no form

Estou usando Delphi 7 + conexão dbexpress + Interbase 6.0

Fico no aguardo

Rogério


Rogeranalista

Rogeranalista

Curtidas 0

Respostas

Richardsonlourenco

Richardsonlourenco

02/11/2006

É possivel sim criar os objetos dinamicamentes.

Na realidade eu so trabalho dessa forma

O que pode esta acontecendo é o seguinte.... Vc deve esta usando essa sua função no evento OnCreate do Form que é etivado logo quando a aplicação é iniciada caso vc tenha deixado o form como auto create no projeto.

Sugiro vc colocar essa função de criação do componente no envento on Show do Form...

Espero ter ajuado... Ququer coisa é so falar

Abraços


GOSTEI 0
Rogeranalista

Rogeranalista

02/11/2006

Colega, obrigado pela atenção

Resolvi o problema: O erro estava em que estava criando o objeto assim:

QrContReg := QrContReg.Create(nil) errado

Como posso criar um objeto a partir de uma classe que não existe ?


QrContReg := TClientDataset.Create(nil) certo
Agora sim: Crio um objeto a partir da classe TClientDataset

Antes estava fazendo no evento onShow

Mas falow, obrigado pela sua ajuda

Um abraço

Rogério


GOSTEI 0
POSTAR