Fórum porq so atualiza BD depois q fecha aplicaçao ? #279339

28/04/2005

0

Tenho uma aplicaçao em rede e se um usuario alterar alguma coisa num registro os outros usuarios da rede so vem a alteraçao depois q quem alterou o registro fechar o programa ou seja nao esta atualizando o banco de dados, so atualiza depois q fecha o prog!

Uso interbase 6.0 acesso via ibx !

[color=green:2fd8fad081]Tópico editado por gandalf.nho. Por favor, não poste em maiúsculas[/color:2fd8fad081]


Guilherme

Guilherme

Responder

Posts

28/04/2005

Gandalf.nho

Vc está comitando assim que salva e setou as transações como ReadCommited?


Responder

Gostei + 0

28/04/2005

Guilherme

so estou dando applyupdate no afterpost !!!!tenho q fazer mais alguma coisa???? o q ????


Responder

Gostei + 0

28/04/2005

Gandalf.nho

Vc precisa comitar a transação para que as alterações sejam gravadas em definitivo no banco. Provavelmente só está comitando ao fechar o sistema.


Responder

Gostei + 0

28/04/2005

Guilherme

intao vc pode me falar como faço isso ????????????????


Responder

Gostei + 0

28/04/2005

Gandalf.nho

Vc não está usando ClientDataSet, né? Se não, após realizar suas alterações vc deve dar um Commit na transação associada ao componente que vc está usando. Não esqueça de configurar as transações como ReadCommited para que as outras máquinas possam enxergar as alterações que uma fez. E vc não precisa usar ApplyUpdates a menos que esteja com o cache ativo, basta dar o Post e depois Commit.
Ex:

Transaction1.StartTransaction;
Query1.Insert;
Query1NOME_CAMPO.Value = ´TESTE´;
Query1.Post;
Transaction1.Commit;



Responder

Gostei + 0

29/04/2005

Guilherme

usei assim IBTransaction1.CommitRetaining; (assim deu certo )
pois so o commit; sumia os dados da tela por isso ocorre ???


Responder

Gostei + 0

03/05/2005

Gandalf.nho

Isso acontece pq o Commit fecha a transação e consequentemente os datasets associados e o CommitRetaining mantém a transação aberta.


Responder

Gostei + 0

11/05/2005

Steve_narancic

Isso acontece pq o Commit fecha a transação e consequentemente os datasets associados e o CommitRetaining mantém a transação aberta.


Isto significa que o registro ficará bloqueado até eu der um commit?


Responder

Gostei + 0

11/05/2005

Gandalf.nho

O CommitRetaining comita a transação mas não a fecha como o Commit faz, vc pode usá-la, embora geralmente se recomende não deixar uma transação aberta por mais tempo que o necessário.


Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar