[firebase-br] Problema com dbExpress

Francisco Thiago jeandeadlucky em yahoo.com.br
Sex Jul 29 17:32:46 -03 2005


Em duas situações distintas.... eu faço o seguinte

Criei uma propriedade DataSet no FormPai do Projeto... e sempre que esta 
propriedade está vazia, ele joga uma exception dizendo que falta o DataSet e 
para o usuario entrar em contato com o suporte...

E para o caso do TDataModule (registrar o SQLConnection) eu criei uma 
procedure no pai que recebe o datamodule e procura por um componente de 
conexao... dai ele vai registrando nos DataSet....

Tem funcionado :D

Francisco Thiago de Almeida
Enter&Plug Sistemas
Divisão: Desenvolvimento / Banco de dados
Franca - SP

----- Original Message ----- 
From: "Giovani Benedetti Penha" <giovani em cooperval.com>
To: "FireBase" <lista em firebase.com.br>
Sent: Friday, July 29, 2005 4:56 PM
Subject: Re: [firebase-br] Problema com dbExpress


> ahahah viva a gambiarra!!! rs
>
> Me lembrei que eu tbem aprontei uma aqui: no onCreate de cada Form, eu 
> atribuo novamente o datasource do componente DBGrid, assim, mesmo que o 
> atributo se "perca" em tempo de design, em tempo de execução ele é 
> atribuído novamente. O duro é que tem que lembrar de colocar isso em cada 
> Form... hehe
>
> []´s
> Giovani Benedetti Penha
>
> Felipe Giotto escreveu:
>
>> E aí, Benedetti!!
>>
>> Consegui resolver o problema, daquele meu jeitinho q vc conhece, 
>> heheheh!!! Já que sou brasileiro, vamos pras gambiarras!! :D
>>
>> Eu fiz uma herança do objeto TSQLQuery e gerei outro componente, que tem 
>> uma propriedade SQLConexão, só que do tipo String... Eu defino a 
>> SQLConnection e copio a mesma coisa na SQLConexão.. Dessa forma, ela fica 
>> guardada no objeto sob a forma de string, aí ela não é perdida... Depois, 
>> durante o construtor do objeto, eu analiso a string e vou referenciando 
>> os objetos e procurando os seus componentes... Quando encontro, jogo a 
>> referência na SQLConnection.. Por exemplo, se o campo SQLConexão está 
>> como: "SBanco", eu procuro dentro do meu Owner pelo objeto SBanco através 
>> do método FindComponent... Se não encontrar, como deve acontecer se o 
>> campo for, por exemplo, "DataModule1.SBanco", eu procuro pelo objeto 
>> DataModule1 dentro do objeto Application, depois procuro SBanco dentro do 
>> DataModule1, e assim por diante... Eu sei que é uma gambiarra imensa, mas 
>> eu não tive mais problemas com essas coisas, de forma nenhuma!! Isso 
>> serve como idéia para quem estiver passando por problemas semelhantes!! 
>> Se alguém souber alguma forma melhor de fazer isso, eu também agradeço 
>> por dicas!!!
>>
>> Um abraço para toda a galera,
>>
>> Felipe Giotto ;-)
>>
>>
>>
>>
>>
>> Giovani Benedetti Penha escreveu:
>>
>>> Fala Giotto... Comigo também acontece direto, mas o problema aqui é com 
>>> os dbgrids... Às vezes a referência aos datasources somem, do nada. E o 
>>> pior é que eu já perdi muito tempo com isso no começo, tentando 
>>> descobrir porquê meu dbgrid ficava em branco.
>>>
>>> A solução que eu achei foi essa aí mesmo que você disse: sempre abrir os 
>>> DataModules antes de abrir os Forms, daí o problema parou de acontecer. 
>>> Também concordo com a teoria do Francisco para o caso.
>>>
>>> Não sei de outra solução melhor, só sei que esse negócio de ficar 
>>> abrindo os datamodules é um saco...
>>>
>>>
>>> []´s
>>> Giovani Benedetti Penha
>>>
>>> Felipe Giotto escreveu:
>>>
>>>> É... Parece que é esse o problema mesmo... Fiz umas análises e cheguei 
>>>> à seguinte conclusão: Se eu abro o meu projeto (DPR), com os 
>>>> DataModules (onde estão as SQLConnections) e com os Forms, tudo 
>>>> funciona normalmente. Porém, se eu não estiver com o projeto aberto e 
>>>> abrir somente o Form, as referências são perdidas!! Ele não deve estar 
>>>> encontrando as referências ao meu DataModule, já que ele não está 
>>>> carregado... O meu DataModule já está na cláusula USES do meu projeto, 
>>>> mas mesmo assim está perdendo a referência, neste caso... Se alguém 
>>>> souber de alguma alternativa para esse problema, agradeço!!
>>>>
>>>> Um abraço a todos,
>>>>
>>>> Felipe Giotto.
>>>>
>>>>
>>>>
>>>>
>>>> Francisco Thiago escreveu:
>>>>
>>>>> Isso não é problema do DBExpress não.. acontece com todos os 
>>>>> componente do Delphi... Se o Datamodule do SQLConnection não for 
>>>>> criado primeiro (ou o próprio SQLConnectin não for criado primeiro), o 
>>>>> delphi simplesmente apaga a referência... :(
>>>>>
>>>>> Chato né? Acontece direto isso comigo, só que apenas com os 
>>>>> DataSource...
>>>>>
>>>>>
>>>>> []'s
>>>>>
>>>>>
>>>>> Francisco Thiago de Almeida
>>>>> Enter&Plug Sistemas
>>>>> Divisão: Desenvolvimento / Banco de dados
>>>>> Franca - SP
>>>>>
>>>>> ----- Original Message ----- From: "Felipe Giotto" 
>>>>> <felipe em metasoftware.com.br>
>>>>> To: <lista em firebase.com.br>
>>>>> Sent: Friday, July 29, 2005 11:33 AM
>>>>> Subject: [firebase-br] Problema com dbExpress
>>>>>
>>>>>
>>>>> Olá a todos.
>>>>>
>>>>> Estou passando por um probleminha, não especificamente com o Firebird,
>>>>> mas com o dbExpress... Eu crio as minhas conexões de acesso ao banco, 
>>>>> e
>>>>> ajusto as minhas Querys, SPs e etc etc etc para apontarem para as
>>>>> conexões através da propriedade SQLConnection. Porém, esporadicamente 
>>>>> a
>>>>> propriedade SQLConnection é zerada sem que eu perceba.. Quando estou
>>>>> rodando o programa, ou então enquanto estou implementando, constato 
>>>>> que
>>>>> as propriedades SQLConnection estão todas em branco. Alguém sabe o que
>>>>> acontece com esses componentes??
>>>>>
>>>>> Desde já agradeço,
>>>>>
>>>>> Felipe Giotto.
>>>>>
>>>>>
>>>>> ______________________________________________
>>>>> FireBase-BR (www.firebase.com.br) - Hospedado em www.bavs.com.br
>>>>> Para editar sua configuração na lista, use o endereço 
>>>>> http://mail.firebase.com.br/mailman/listinfo/lista_firebase.com.br
>>>>> Para consultar mensagens antigas: http://firebase.com.br/pesquisa
>>>>>
>>>>
>>>>
>>>> ______________________________________________
>>>> FireBase-BR (www.firebase.com.br) - Hospedado em www.bavs.com.br
>>>> Para editar sua configuração na lista, use o endereço 
>>>> http://mail.firebase.com.br/mailman/listinfo/lista_firebase.com.br
>>>> Para consultar mensagens antigas: http://firebase.com.br/pesquisa
>>>>
>>>>
>>>
>>> ______________________________________________
>>> FireBase-BR (www.firebase.com.br) - Hospedado em www.bavs.com.br
>>> Para editar sua configuração na lista, use o endereço 
>>> http://mail.firebase.com.br/mailman/listinfo/lista_firebase.com.br
>>> Para consultar mensagens antigas: http://firebase.com.br/pesquisa
>>>
>>>
>>
>
> ______________________________________________
> FireBase-BR (www.firebase.com.br) - Hospedado em www.bavs.com.br
> Para editar sua configuração na lista, use o endereço 
> http://mail.firebase.com.br/mailman/listinfo/lista_firebase.com.br
> Para consultar mensagens antigas: http://firebase.com.br/pesquisa
>
>
> -- 
> No virus found in this incoming message.
> Checked by AVG Anti-Virus.
> Version: 7.0.338 / Virus Database: 267.9.7/60 - Release Date: 28/07/2005
>
> 


	
	
		
_______________________________________________________ 
Yahoo! Acesso Grátis - Internet rápida e grátis. 
Instale o discador agora! http://br.acesso.yahoo.com/





Mais detalhes sobre a lista de discussão lista