Atualizar dados na rede

Firebird

10/06/2005

Senhores,

Estou desenvolvendo uma aplicação usando Delphi/FireBird para funcionar em rede e preciso da seguinte característica:

Quando um cliente insere ou atualiza algum dado, todos os outros precisam ´ver´ esta atualização imediatamente. Para acesso ao Banco de Dados estou utilizando os componentes IBX, e para notificar alterações no banco estou utilizando o comando POST_EVENTS, chamado dentro de um Trigger que é ativado depis de cada alteração no banco.

Os clientes recebem a Notificação do Banco de dados, e minha dúvida está exatamente neste ponto: Qual o código que devo colocar na aplicação cliente para que os dados sejam atualizados sempre que uma aplicação cliente receber uma Notificação do banco?

Por favor, soccoram-me!!!!


Carlosfim

Carlosfim

Curtidas 0

Respostas

Sremulador

Sremulador

10/06/2005

você pode utilizar um ttimer para fazer esta operação, pois já pensou se o usuario esta fazendo uma pesquisa e de repente você coloca outras informações na tela dele :?:


GOSTEI 0
Carlosfim

Carlosfim

10/06/2005

sremulador,

O uso de um timer iria causar tráfego desnecessário na rede. Com os eventos disparados pelo banco eu só atualizo os dados quando for realmente necessário.
Quanto a consulta, meu sistema armazena a última consulta realizada. Por isso o usuário não veria dados que não estivessem dentro dos critérios de sua consulta.

Mas, o problema não é esse: Eu quero sabeo como faço para atualizar os dados, independente de como ou quando eu vou chamar essa atualização.
Desconectar e Reconectar no Banco de dados funciona, mas deve ter um jeito melhor de fazer isso,

Obrigado pela ajuda,


GOSTEI 0
Sremulador

Sremulador

10/06/2005

bem acho que interpretei errado sua pergunta, vamos lá e só selecionar o aopção read_commited no seu compoenente de transação, ao gravar em uma tabela tem que dar um commit....


GOSTEI 0
Carlosfim

Carlosfim

10/06/2005

Caro Sremulador, é isso mesmo que estou procurando!

Estou usando IBX e não encontrei nenhuma propriedade no componente IBTransaction onde eu pudesse configurar esta opção.

Sei que o IBO possui uma propriedade chamada isolation, mas no IBX não existe.

Vc sabe como configurar no IBX?



Obrigado


GOSTEI 0
Sremulador

Sremulador

10/06/2005

eheheh, desculpe penso que todos conhecem :), da dois clicks em cima dele que aparece .. :wink:


GOSTEI 0
Carlosfim

Carlosfim

10/06/2005

Obrigado pela ajuda!!!



Funcionou redondinho.


GOSTEI 0
POSTAR