Stack OverFlow ao mudar de DBMemo

Delphi

30/08/2005

Olá,
Boa a noite Todos.
estou com um problema de Stack OverFlow quando tiro o foco de um DBMemo. Estive pesquisando e vi que este erro é causado por estouro da memória, pilha ou coisa parecida. Mas acho que este não é o meu caso, pois só dá este erro nos DBmemos. Nos DBedits, DBcombobox, não acontecem.
O interessante tb, é que só ocorre quando os ZTables (utilizo Zeos com MySql e Delphi 7) estão relacionados. Sem relacionamento não existe erro.
Estranho. No evento on Exit dos DBmemos não há nada. Quem puder ajudar, agradeço.


Dbergkamps

Dbergkamps

Curtidas 0

Respostas

Dbergkamps

Dbergkamps

30/08/2005

Sobe....


GOSTEI 0
Dbergkamps

Dbergkamps

30/08/2005

Olá, pessoal.
testei e acabei descobrindo que o erro está acontecendo pq eu tenho um campo lookup. Esse campo lookup lê o código do paciente e exibe o nome. Mas esta tabela se relaciona com a tb paciente tambem pelo campo codigo. O que fazer agora??? :shock: :shock: :shock: :shock:


GOSTEI 0
Dbergkamps

Dbergkamps

30/08/2005

alguém pode me ajudar?


GOSTEI 0
Motta

Motta

30/08/2005

Não entendi , parece ser uma chamada recursiva.

Não existe nenhum método chamada pelo objeto que possa ser recursivo, tipo query1.Open num evento Open etc.


GOSTEI 0
Dbergkamps

Dbergkamps

30/08/2005

Obrigado pela ajuda Motta.
Mas nao existe nenhum recurso deste. O erro acontece com ZTables. E nao há nenhum linha de código nos eventos dos Ztables. O que mais poderia ser????


GOSTEI 0
Dbergkamps

Dbergkamps

30/08/2005

alguem pode me ajudar....


GOSTEI 0
Martins

Martins

30/08/2005

Olá, pessoal. testei e acabei descobrindo que o erro está acontecendo pq eu tenho um campo lookup. Esse campo lookup lê o código do paciente e exibe o nome. Mas esta tabela se relaciona com a tb paciente tambem pelo campo codigo. O que fazer agora??? :shock: :shock: :shock: :shock:


Nunca usei ZeosLib, mas vejamos aqui, quais são suas tabelas relacionada e como vc fez esse relacionamento, pq mesmo vc dizendo q não escreveu nenhuma linha de código q posse causar recursividade, vc pode está quebrando a lógica do componente, vc poderia descrever quais saão as tabelas relacionadas e como elas estão relacionadas, talvez assim fique mais fácil para se chegar a uma solução.

Boa sorte!!


GOSTEI 0
Dbergkamps

Dbergkamps

30/08/2005

Martins, obrigado.
Aqui estão os dados da tabela Avaliação que se relaciona com a tb de paciente.

Name:ZTAvalia
MasterSource: DSPaciente;//Data Source da TB paciente
MasterFields: pac_cod;// chave primaria da TB paciente
IndexFieldName: aval_cod; // chave primaria da TB Avalia


Se eu apagar o campo Nome (campo lookup), o erro não acontece mais.
Aqui estão os dados do Campo Nome:
FieldKind: fkLookup;
FielName: Nome;
Key Fields: av_cod_pac; // campo da table aval. que grava o cod do pac
LookupDataSet: ZTPaciente; // tabela de pacientes
Lookup KeyFields: pac_cod
Lookup ResultFields: pac_nome



GOSTEI 0
POSTAR