Fórum Problema muito estranho com Delphi 6 ou 7 e Interbase 6 #237320
11/06/2004
0
Sou um programador iniciante no mundo delphi e estou com um problema muito estranho: Tenho um pequeno programinha mixuruca de cadastro usando interbase 6 com os controles IBX no delphi 7. Quando eu insiro um novo registro, preencho todos os campos e salvo (tabela.post), tudo funciona, mas se eu preencho só o primeiro campo, do um post, depois preencho os demais e dou outro post, não salva, fica só o primeiro campo gravado, os demais não gravam. isso continua acontecendo mesmo depois de dar refresh. Só volta ao normal depois de sair da tabela e entrar novamente, ou indo para o último registro e voltando ao primeiro.
Detalhe: se já houver registros, eu posso alterálos normalmente e salvá-los que não dá problema.
Preciso resolver esse problema com uma certa urgência porque [b:754ef96e3d]todas as janelas de cadastro para meus programas que eu fiz até hoje e já estão com os clientes devem estar com o mesmo bug.[/b:754ef96e3d] Eu não tinha percebido isso antes porque sempre preencho todos os campos antes de salvar, nos meus testes.
o meu ibTransaction está ativado o read_commited. O que eu faço?
Grato desde Já ^_^ :shock:
Detalhe: se já houver registros, eu posso alterálos normalmente e salvá-los que não dá problema.
Preciso resolver esse problema com uma certa urgência porque [b:754ef96e3d]todas as janelas de cadastro para meus programas que eu fiz até hoje e já estão com os clientes devem estar com o mesmo bug.[/b:754ef96e3d] Eu não tinha percebido isso antes porque sempre preencho todos os campos antes de salvar, nos meus testes.
o meu ibTransaction está ativado o read_commited. O que eu faço?
Grato desde Já ^_^ :shock:
Vitor Rubio
Curtir tópico
+ 0
Responder
Posts
11/06/2004
Wagnerps
tenta isso
após
coloque
Falow,
espero que ajude.
após
tabela.Post;
coloque
tabela.ApplyUpdates;
Falow,
espero que ajude.
Responder
Gostei + 0
11/06/2004
Vitor Rubio
Desculpe, mas não ajudou, além de eu ter que habilitar o cash updates, continuo com o mesmo problema. abaixo vai o código da procedure Salvar() para ver se tem alguma coisa de errado.
book := tabela.Bookmark; //variavel global
tabela.ApplyUpdates;
trans.CommitRetaining;
//tabela.Refresh;
antes de chamar essa procedure eu verifico se tabela.state in [dsinsert, dsedit] e depois de salvar, eu restauro o bookmark e dou um tabela.edit
Se vc tiver mais alguma sugestão.....
book := tabela.Bookmark; //variavel global
tabela.ApplyUpdates;
trans.CommitRetaining;
//tabela.Refresh;
antes de chamar essa procedure eu verifico se tabela.state in [dsinsert, dsedit] e depois de salvar, eu restauro o bookmark e dou um tabela.edit
Se vc tiver mais alguma sugestão.....
Responder
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)