RES: [delphi-br] Constructor de Classe

2004-10-05 Por tôpico Luiz Eduardo Araujo - TI


Valeu Romário... Vou fazer as alterações e ver no que vai dar.
 
O objeto ACep é uma instância da classe TEndereco.
 
A única coisa que essa classe faz é buscar no banco as informações sobre o cep passado 
pelo parâmetro. Realmente a diferença nos nomes causa um pouco de confusão.
 
[]'s e inté
 
 

Att.
Luiz Eduardo Dario de Araujo
> [EMAIL PROTECTED] <mailto:[EMAIL PROTECTED]> 

-Mensagem original-
De: Romario (Delphi) [mailto:[EMAIL PROTECTED] 
Enviada em: terça-feira, 5 de outubro de 2004 11:16
Para: [EMAIL PROTECTED]
Assunto: Re: [delphi-br] Constructor de Classe




Luiz Eduardo,

Porque ACep é do tipo TEndereco? ACep ao meu ver deveria ser do tipo
TCep (dependendo do nº de atributos) ou um atributo (do tipo String) da
classe TEndereco.

Ex.:

Endereco := TEndereco.Create;

Endereco.Cep := edtCep.Text;

De que forma você criou a sua classe TEndereco?


Quanto ao objeto de conexão, não acho que você deveria tratá-lo dentro
da classe. Porque não cria um DataModule só para ele ou o coloca no seu
DataModule base (de onde serão herdados os demais DataModules)? Dessa
forma, você não precisaria enviá-lo como parâmetro. Bastaria uma chamada
ao ancestral no momento em que for preciso comunicar-se com o banco de
dados.

Ex.:  Inherited AbreConexao;


Bem, espero não ter aumentado ainda mais as suas dúvidas.

Sds,

Romario



Luiz Eduardo Araujo - TI escreveu:
>
> Srs, bom dia.
> 
> Criei uma classe cujo o constructor recebe dois parâmetros: Uma string e 
um objeto TADOConnection. Dentro desse mesmo constructor, possuo um objeto TADOQuery 
declarado, que após a criação, recebe na propriedade Connection o objeto 
TADOConnection que passe como parâmetro, porem, nesse momento o sistema apresenta um 
erro de Access Violation.
> 
> Segue uma parte do código fonte:
> //Formulário
> var
> ACep : TEndereco;
> begin
> conEndereco.Connected := True;
> ACep := TEndereco.Create(edtCep.Text,conEndereco);
> 
> //Classe
> Constructor TEndereco.Create(pCep: String; var pConexao: TADOConnection);
> var
> AdoQuery : TADOQuery;
> begin
> AdoQuery := TADOQuery(Self);
> AdoQuery.Close;
> AdoQuery.Connection := pConexao;
> 
> 
> Na linha em negrito, o sistema apresenta o erro. Alguém saberia me dizer o 
que está ocorrendo?
> 
> Agradeço qualquer ajuda.
>
> 
>
> Atenciosamente,
>
> Luiz Eduardo de Araujo


--
<<<<< FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM >>>>>

Para ver as mensagens antigas, acesse:
 http://br.groups.yahoo.com/group/delphi-br/messages

Para falar com o moderador, envie um e-mail para:
 [EMAIL PROTECTED] ou [EMAIL PROTECTED]

Links do Yahoo! Grupos












[As partes desta mensagem que não continham texto foram removidas]






-- 
<<<<< FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM >>>>>

Para ver as mensagens antigas, acesse:
 http://br.groups.yahoo.com/group/delphi-br/messages

Para falar com o moderador, envie um e-mail para:
 [EMAIL PROTECTED] ou [EMAIL PROTECTED]
 
Links do Yahoo! Grupos

<*> Para visitar o site do seu grupo na web, acesse:
http://br.groups.yahoo.com/group/delphi-br/

<*> Para sair deste grupo, envie um e-mail para:
[EMAIL PROTECTED]

<*> O uso que você faz do Yahoo! Grupos está sujeito aos:
http://br.yahoo.com/info/utos.html

 





Re: [delphi-br] Constructor de Classe

2004-10-05 Por tôpico Romario (Delphi)

Luiz Eduardo,

Porque ACep é do tipo TEndereco? ACep ao meu ver deveria ser do tipo 
TCep (dependendo do nº de atributos) ou um atributo (do tipo String) da 
classe TEndereco.

Ex.:

Endereco := TEndereco.Create;

Endereco.Cep := edtCep.Text;

De que forma você criou a sua classe TEndereco?


Quanto ao objeto de conexão, não acho que você deveria tratá-lo dentro 
da classe. Porque não cria um DataModule só para ele ou o coloca no seu 
DataModule base (de onde serão herdados os demais DataModules)? Dessa 
forma, você não precisaria enviá-lo como parâmetro. Bastaria uma chamada 
ao ancestral no momento em que for preciso comunicar-se com o banco de 
dados.

Ex.:  Inherited AbreConexao;


Bem, espero não ter aumentado ainda mais as suas dúvidas.

Sds,

Romario



Luiz Eduardo Araujo - TI escreveu:
> 
> Srs, bom dia.
>  
> Criei uma classe cujo o constructor recebe dois parâmetros: Uma string e um 
> objeto TADOConnection. Dentro desse mesmo constructor, possuo um objeto TADOQuery 
> declarado, que após a criação, recebe na propriedade Connection o objeto 
> TADOConnection que passe como parâmetro, porem, nesse momento o sistema apresenta um 
> erro de Access Violation.
>  
> Segue uma parte do código fonte:
> //Formulário
> var
> ACep : TEndereco;
> begin
> conEndereco.Connected := True;
> ACep := TEndereco.Create(edtCep.Text,conEndereco);
>  
> //Classe
> Constructor TEndereco.Create(pCep: String; var pConexao: TADOConnection);
> var
> AdoQuery : TADOQuery;
> begin
> AdoQuery := TADOQuery(Self);
> AdoQuery.Close;
> AdoQuery.Connection := pConexao;
>  
>  
> Na linha em negrito, o sistema apresenta o erro. Alguém saberia me dizer o que está 
> ocorrendo?
>  
> Agradeço qualquer ajuda.
> 
>  
> 
> Atenciosamente,
> 
> Luiz Eduardo de Araujo


-- 
< FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM >

Para ver as mensagens antigas, acesse:
 http://br.groups.yahoo.com/group/delphi-br/messages

Para falar com o moderador, envie um e-mail para:
 [EMAIL PROTECTED] ou [EMAIL PROTECTED]
 
Links do Yahoo! Grupos

<*> Para visitar o site do seu grupo na web, acesse:
http://br.groups.yahoo.com/group/delphi-br/

<*> Para sair deste grupo, envie um e-mail para:
[EMAIL PROTECTED]

<*> O uso que você faz do Yahoo! Grupos está sujeito aos:
http://br.yahoo.com/info/utos.html

 





[delphi-br] Constructor de Classe

2004-10-05 Por tôpico Luiz Eduardo Araujo - TI


Srs, bom dia.
 
Criei uma classe cujo o constructor recebe dois parâmetros: Uma string e um objeto 
TADOConnection. Dentro desse mesmo constructor, possuo um objeto TADOQuery declarado, 
que após a criação, recebe na propriedade Connection o objeto TADOConnection que passe 
como parâmetro, porem, nesse momento o sistema apresenta um erro de Access Violation.
 
Segue uma parte do código fonte:
//Formulário
var
ACep : TEndereco;
begin
conEndereco.Connected := True;
ACep := TEndereco.Create(edtCep.Text,conEndereco);
 
//Classe
Constructor TEndereco.Create(pCep: String; var pConexao: TADOConnection);
var
AdoQuery : TADOQuery;
begin
AdoQuery := TADOQuery(Self);
AdoQuery.Close;
AdoQuery.Connection := pConexao;
 
 
Na linha em negrito, o sistema apresenta o erro. Alguém saberia me dizer o que está 
ocorrendo?
 
Agradeço qualquer ajuda.

 

Atenciosamente,

Luiz Eduardo de Araujo



[As partes desta mensagem que não continham texto foram removidas]






-- 
< FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM >

Para ver as mensagens antigas, acesse:
 http://br.groups.yahoo.com/group/delphi-br/messages

Para falar com o moderador, envie um e-mail para:
 [EMAIL PROTECTED] ou [EMAIL PROTECTED]
 
Links do Yahoo! Grupos

<*> Para visitar o site do seu grupo na web, acesse:
http://br.groups.yahoo.com/group/delphi-br/

<*> Para sair deste grupo, envie um e-mail para:
[EMAIL PROTECTED]

<*> O uso que você faz do Yahoo! Grupos está sujeito aos:
http://br.yahoo.com/info/utos.html