CORTAR CONEXAO

USUARIO.EXCLUIDOS 23/04/2007 11:25:45
#213322
tenho uma base de dados em access...e no final do mes...o coordenador precisa fechar os dados montando graficos, planilhas e etc, como faco para bloquear a base de dados...tipo quebrar a conexao, e se alguem ja estiver na base gravando os dados??como posso fazer isso...
MAXPAP 23/04/2007 11:28:45
#213325
Amigo não consegui entender o que vc quiz...
USUARIO.EXCLUIDOS 23/04/2007 11:31:58
#213328
tipo assim...
preciso bloquear a base de dados por uma hora...nao deixar ngm acessar para gravar e atualizar.... mas como posso fazer isso...e o q acontece com qm estiver atualizando na hora q bolquerar???
CLINS 23/04/2007 14:35:47
#213380
Abra o banco em modo somente leitura.
Você pode fazer isto na chamada opendatabase.

Syntaxe

Set database = workspace.OpenDatabase (dbname, options, read-only, connect)


Coloque o parâmetro read-only como true e só será possível ver os dados.


USUARIO.EXCLUIDOS 23/04/2007 20:09:10
#213449
BGONCALVES chara... de SJC, rsrs, bom fera vc pode fazer uma adptação no seu sistema, vc pode ativar o evento on time dos seus formularios para a cada intervalo de tempo verificarem o status da conexão no banco de dados, se o status for ativo o seu sistema permanece aberto se for fechado o sistema fecha todos os formulário. è bem simples na pratica, vc tera que ter no banco alguma tabela onde vc adm ira colocar ativo ou inativo e seu sistema estara programado para ficar verificando isso e quando o status mudar... pra inativo por exemplo todos os formularios serão fechado...

Sds.
LUIS.HERRERA 23/04/2007 20:28:04
#213450
Resposta escolhida
Gonçalves o que o CEL_SUB7 disse é uma boa opção, mas se você quer permitir que seus usuários possam continuar usando o DB para consulta apenas, então terá de adaptar um pouco mais o seu programa para isso.

Tarefas a realizar:
1- Criar uma tabela no DB com um campo boleano e uma tela de Administração, onde o ADMIN do sistema possa mudar o status de acesso (livre ou bloqueado).

2- Seguir a dica do CEL_sub7, mas isso obrigaria um excesso de conexões e fluxo de checagens no DB pela rede, ou eu prefiro assim, crie na função de conexão, uma checagem do status.

A cada tentativa que o usuário fizer de acesso ao DB, seja para alterar, incluir ou excluir dados, a rotina de conexão é ativada e a checagem também, assim se for Livre faz a ação solicitada, mas se bloqueado, então exibe uma mensagem de sistema bloqueado temporariamente, fecha conexão e aborta a ação no DB. Muito mais prático, pois só verifica somente quando for solicitado mudança no DB.
USUARIO.EXCLUIDOS 24/04/2007 08:29:20
#213495
obrigado
Tópico encerrado , respostas não são mais permitidas