InterBase Cliente Servidor
Tenho duas aplicações que acessam o mesmo banco de dados (IB).
Na aplicação A faço o cadastro de clientes.
Na aplicação B Leio a tabela clientes.
O problema é que quando as aplicações A e B estão abertas, se eu cadastrar um novo cliente na aplicação A, não consigo ter acesso ao novo registro pela aplicação B a menos que eu feche e abra novamente a aplicação B.
O que eu faço pra acessar o esse novo registro pela aplicação B sem ter que reinicia-la ?
Obs. Na aplicação A, após o cadastro do cliente, estou usando o comando IBTR.commitRetainig.
Na aplicação A faço o cadastro de clientes.
Na aplicação B Leio a tabela clientes.
O problema é que quando as aplicações A e B estão abertas, se eu cadastrar um novo cliente na aplicação A, não consigo ter acesso ao novo registro pela aplicação B a menos que eu feche e abra novamente a aplicação B.
O que eu faço pra acessar o esse novo registro pela aplicação B sem ter que reinicia-la ?
Obs. Na aplicação A, após o cadastro do cliente, estou usando o comando IBTR.commitRetainig.
Ederbond
Curtidas 0
Respostas
Delphi32
04/05/2004
bom, você pode começar configurando o nível de isolamento da transação. para isso, faça o seguinte:
se a aplicação B vai apenas ler a tabela acho que não vai ter problema se você fizer o seguinte: clique duas vezes no componente IBTransaction no qual a Tabela está ligada. No Editor da Transaction, selecione a opção ´Read Commited´ e pressione OK. Só isso e já deve funcionar...
qualquer coisa, poste aqui de novo...
t+!
se a aplicação B vai apenas ler a tabela acho que não vai ter problema se você fizer o seguinte: clique duas vezes no componente IBTransaction no qual a Tabela está ligada. No Editor da Transaction, selecione a opção ´Read Commited´ e pressione OK. Só isso e já deve funcionar...
qualquer coisa, poste aqui de novo...
t+!
GOSTEI 0
Jsaraujo
04/05/2004
Boa tarde,
O seu problema acontece porque vc grava os dados na aplicação A, mas não esta atualizando as tabelas na aplicação B, para realizar tal atualização sugiro usar na aplicação B somente queries e todas fechadas somente abrindo-as quando for utilizar ou formulario em questão e ao fechar o formulario tambem fechar as queries, dessa maneira vc vai garantir que os dados serão puxados pela aplicação no banco de dados.
Lembrando que se um cliente for gravado na aplicação e se o formulario de consulta da aplicação B estiver aberto o registro não aparecerá automaticamente, a não ser que esteja sempre atualizando a query, ou seja, abrindo e fechando a mesma enquanto o formulario estiver aberto.
Espero ter ajudado...
O seu problema acontece porque vc grava os dados na aplicação A, mas não esta atualizando as tabelas na aplicação B, para realizar tal atualização sugiro usar na aplicação B somente queries e todas fechadas somente abrindo-as quando for utilizar ou formulario em questão e ao fechar o formulario tambem fechar as queries, dessa maneira vc vai garantir que os dados serão puxados pela aplicação no banco de dados.
Lembrando que se um cliente for gravado na aplicação e se o formulario de consulta da aplicação B estiver aberto o registro não aparecerá automaticamente, a não ser que esteja sempre atualizando a query, ou seja, abrindo e fechando a mesma enquanto o formulario estiver aberto.
Espero ter ajudado...
GOSTEI 0
Nigro
04/05/2004
e agora?
qual das duas dicas é a mais viável?
qual das duas dicas é a mais viável?
GOSTEI 0