Ler arquivo txt como modo exclusivo!
08/02/2006
0
o meu sistema é apenas para serviços e pega informações do outro sistema para poder liberar os serviços, até hoje o meu sistema era atualizado todos os dias as 08h e as 12h só que, agora tenho que fazer isso em tempo real e o programador teve uma ideia. Assim que alguém fizer uma alteração no cadastro do cliente, pagamento, exclusão, atualização ou qq outra alteração será criado um arquivo de txt para com as informações, dai ele falou: ´Você tem que criar uma rotina para tentar ler o arquivo a cada 10 segundos por exemplo, ler o arquivo, verificar as informações existentes e e depois apagar depois que terminar a leitura, ai vem o problema, quando tento abrir o arquivo para escrever nele dis que o arquivo já está aberto no modo exclusivo e tenho que fazer um loop para ficar lendo o arquivo até ele ser liberado!
quando for liberado, leio as informações, comparo com as atuais e atualizo se necessário... mais não sei como fazer esse ´looping´....
Paullsoftware
Posts
08/02/2006
Sourcecode
09/02/2006
Paullsoftware
inclusive o meu sistema(banco) fica em um servidor e o sistema(banco) da empresa fica em outro..
a solução que encontramos foi essa, ele cria um arquivo sempre que houver mudanças na base dele que seja de importânica para a minha aplicação e eu leio a informação e em seguida dou um rewrite no arquivo só que quando a minha aplicação ler e tenta escrever da um erro disendo que o arquivo foi aberto por outro processo no modo excluisivo.
09/02/2006
Massuda
var Dados: TextFile; ... AssignFile(Dados, ´drive:/path/para/seu/arquivo.txt´); repeat {$I-} Reset(Dados); {$I+} until IOResult = 0; ...
09/02/2006
Paullsoftware
09/02/2006
Aroldo Zanela
Na paleta Samples tem um componente denominado TShellChangeNotifier que permite monitorar uma determinada pasta. Vocês podem definir uma pasta para o intercâmbio de informações e além do arquivos de dados, criar uma arquivo para sinalizar a conclusão de gravação (p.e: fim.txt).
09/02/2006
Sourcecode
16/02/2006
Paullsoftware
ok kra valeu pelo toque...
madamos de estratégia, estou usando uma Thread para executar as alterações que funciona assim...
ele toda verificando se o sistema da Empresa sofreu alguma alteração nos dados que me são importantes como:
Inclusão de Novo cliente;
Atualização de Dados do Cliente;
Pagamentos;
Pendencias;
...
assim que ele detecta um dessas alterações ele cria um arquivo txt que chamei de ´Online.txt´, e em seguida, manda as informações para o Meu sistema. Que por sua vez verifica se os dados no arquivo são novos faz uma pesquisa no meu bando para ver se as mudanças são verdadeiras e depois apaga o arquivo ´Online.txt´...
Clique aqui para fazer login e interagir na Comunidade :)