[firebase-br] Alguem pode me dar uma dica

Sandro Souza escovadordebits em gmail.com
Seg Dez 7 16:44:23 -03 2009


Bom dia/tarde Marcio.

Grande Marcio, dependendo da versão de Firebird que você esteja utilizando,
você poderia ler os dados da tabela MON$ATTACHMENTS sobre as conexões ativas
sobre os bancos de dados (e ao seu banco de dados especificamente).

Dessa forma, você poderia saber, via programação, quem ainda está conectado
ao banco, e quando só a sua aplicação de caixa estará "sozinha".

Nesse momento (quanto apenas a aplicação de caixa estiver conectada ao
Firebird), você poderia até alterar o valor de algum campo em alguma tabela
de parâmetro, que seria consultado por uma trigger de conexão ao banco, ou
seja, você poderia bloquear as novas conexões enquanto a aplicação de caixa
(já conectada) faz o que tem que fazer.

Qualquer nova tentativa de conexão acionaria a trigger de conexão de banco,
e lá dentro a trigger consultaria esse mesmo parâmetro de "permissão de
conexão", gerando ou não uma exceção para impedir que outras aplicações se
conectem naquele período de tempo.

Assim que a aplicação de caixa terminar o fechamento, poderia alterar o
valor desse parâmetro para o normal, permitindo novas conexões ao banco.

É só uma sugestão.

Espero ter ajudado mais que atrapalhado. :D

2009/12/3 Marcio Da Silva Ereno <marcio em msereno.com.br>

> Ola pessoal,
> Eu conecto o meu sistema em rede via TCP ate aqui blz,
> Mais eu trabalho com Caixa e quando um terminal for fechar o caixa os
> outros
> terminais tem que estar fora do sistema
> para que os mesmo possa atualizar a data do caixa quando entrarem novamente
> no sistema...
> Alguem tem alguma dica como posso fazer isso...
> Grato ate+
>
> --
> Marcio Ereno
> ______________________________________________
> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
> Para saber como gerenciar/excluir seu cadastro na lista, use:
> http://www.firebase.com.br/fb/artigo.php?id=1107
> Para consultar mensagens antigas: http://firebase.com.br/pesquisa
>



Mais detalhes sobre a lista de discussão lista