Fórum BDE atualização na rede com Paradox #177717

27/08/2003

0

Qual seria a melhor configuração do BDE em rede ?

Meu problema é o seguinte:

Os dados não são atualizados em tempo real na rede!

Exemplo: Um usuario faz uma inclusao de uma conta a pagar, outro usuario (em outra estação) vai emitir um relatorio de contas a pagar, o titulo lançado não aparece no relatório e nem em outro lugar do programa rodando (exceto no programa de quem lançou esse novo registro)! Esse titulo lançado só vai aparecer se o usuario fechar o programa e executar novamente.

Não sei se fui claro...

Se puder me ajudar...

Valew pessoal !


Marfred

Marfred

Responder

Posts

27/08/2003

Allen74

Marcelo,

Consulte estes dois links:

http://www.geocities.com/SiliconValley/Cable/6530/artigos/mai99/artigo-1999-05-15.html
http://www.geocities.com/SiliconValley/Cable/6530/artigos/jun99/artigo-1999-06-21.html


Responder

Gostei + 0

27/08/2003

Marconi

Não sei se o seu banco de dados é Paradox ou DBF controlados por BDE.

No BDE as coisas funcionam assim:

O arquivo PDOXUSRS.NET controla os usuários, enquanto os arquivos PARADOX.LCK e PDOXUSRS.LCK bloqueiam para os outros usuários os registros que estão em manutenção (edicão ou Insersão), a não ser para leitura.

O PDOXUSRS.NET voce deve ter um só, exatamente onde voce controla toda a rede. No parâmetro NetDir do BDE voce controla isto. Também via programação voce pode especificar a linha de comando, por exemplo :
Session.NetFileDir:=´f:\rede´;

Em todos as aplicações voce pode colocar este mesmo parâmetro. Isto permitirá que aplicações diferentes compartilhem seus bancos de dados.

Os outros arquivos com extensão ´.LCK´ voce vai encontrar nos diretórios de cada DataBase criado.

Para que todos compartilhem as mesmas informações em tempo real, voce pode acionar logo apos o

Tabela.Post;
um comando de
Tabela.refresh;

Isto fará que as atualações sejam comuns a todos usuários. A demora que pode ocorrer se dara enquando o BDE atualiza os arquivos LCK.

Durante a edição ou insersão os novos dados não estarão disponíveis até que sejam executadas as linhas de comando acima (post e refresh);

Cordialmente

Marconi


Responder

Gostei + 0

27/08/2003

Bacalhau

Marconi, infelizmente o refresh não garante a passagem dos dados em buffer, para o seu local físico :(

Há que utilizar as potencialidades da unit BDE (acho...) para esvaziar esse mesmo buffer.


Responder

Gostei + 0

28/08/2003

Virus69

cara, consegui fazer a atualização na rede fiz o comando refrsh e também refresh no formulário!


Responder

Gostei + 0

28/08/2003

Marconi

Na verdade o Refresh faz com que o ´snapshot´ da tabela que só existe na memória da máquina cliente, volte a recuperar os dados do servidor, mas antes disto ele atualiza os registros que já receberam o comando post.

Marconi


Responder

Gostei + 0

29/08/2003

Marfred

Valew Marconi !!!

Faltava apenas o comando table.refresh no evento afterpost do ttable!!!


Valew MESMO kra !!! Resolvido meu problema !


Responder

Gostei + 0

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

Aceitar