Fórum Stack OverFlow ao mudar de DBMemo #293799
30/08/2005
0
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
Curtir tópico
+ 0Posts
31/08/2005
Dbergkamps
Gostei + 0
31/08/2005
Dbergkamps
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
01/09/2005
Dbergkamps
Gostei + 0
01/09/2005
Motta
Não existe nenhum método chamada pelo objeto que possa ser recursivo, tipo query1.Open num evento Open etc.
Gostei + 0
01/09/2005
Dbergkamps
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
03/09/2005
Dbergkamps
Gostei + 0
03/09/2005
Martins
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
03/09/2005
Dbergkamps
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
Clique aqui para fazer login e interagir na Comunidade :)