Fórum Como Criar um Arquivo Temporário na rede #588792
13/11/2017
0
Surgiu uma Duvida se se algum poder ajudar seria ótimo.
Eu estou tentando implementar uma rotina para verificação de usuários com o objetivo saber se o usuário que está saindo do sistema é o último usuário logado no sistem ... só que não sei se essa ideia vai funcionar lá vai.
queria saber se tem como criar um arquivo temporário na rede e toda vez que um usuário logar verifica se o arquivo já está aberto e toda que o usuário tentar sair do sistema ele tenta deletar o arquivo. Se o usuário não conseguir apagar é porque existe outro usuário na rede manipulando o arquivo...
alguém pode me dar uma luz como fazer...
Eduardo Silva
Curtir tópico
+ 0Post mais votado
14/11/2017
Corre o risco da aplicação ter encerramento forçado e não fechar o arquivo, pronto está feito o problema.
Se você utiliza banco de dados, tente por registro em uma tabela, com usuário e data do acesso, caso tente acessar novamente haverá um registro do usuário, e no caso ter que reiniciar o usuário, apenas exclua o registro da tabela e pronto o acesso terá restaurado.
No caso de criar arquivo, posso te dizer é fato que terá problemas.
1) O mapeamento da rede muda de servidor e não tem acesso de gravação de arquivo.
2) A aplicação trava e encerra sem fechar o arquivo, a leitura fica ativo;
3) Se você tem o sistema em múltiplas áreas e arquivos, o controle irá prejudicar a manutenção;
Isso pra citar os principais.
Eu tenho um sistema que cada acesso eu controlo pelo PID e usuário, cada acionamento do programa ele grava no acesso do usuário e o número do pid do acionamento do programa, e funciona bem, tem um outro que não precisei dar manutenção que grava IP, placa de rede, mas é um mais específico que envia arquivos para área de produção e tem que saber se o equipamento tem permissão de envio.
Luiz Vichiatto
Gostei + 2
Mais Posts
14/11/2017
Eduardo Silva
Gostei + 1
17/11/2017
Luiz Vichiatto
O que você quer dizer com travar o registro na tabela?
Gostei + 1
17/11/2017
Eduardo Silva
Estou Usando o Firebird 2.5 e Delphi 10.1 o componente de acesso é o FireDac.
Seara que tem como travar o registro da tabela pelo FireDac?
Gostei + 0
17/11/2017
Luiz Vichiatto
Você pode criar uma procedure ou function que somente elas alterem a tabela, não permitir alteração da tabela, no firedac se não estou enganado na tabela há uma propriedade chamda 'ReadOnly' indique-a como 'True'.
Feito isto teste, no geral tem que fazer por codificação.
Att
Gostei + 2
Clique aqui para fazer login e interagir na Comunidade :)