MaximoAccess

Caro Usuário, antes de postar pela primeira vez, leia as regras do fórum.

https://www.maximoaccess.com/t48-regras-do-forum

Obrigado

Administração


Participe do fórum, é rápido e fácil

MaximoAccess

Caro Usuário, antes de postar pela primeira vez, leia as regras do fórum.

https://www.maximoaccess.com/t48-regras-do-forum

Obrigado

Administração

MaximoAccess

Gostaria de reagir a esta mensagem? Crie uma conta em poucos cliques ou inicie sessão para continuar.

Dicas Ms Access, Exemplos Ms Access, Codigos VBA Ms Access, SQL Ms Access


3 participantes

    [Resolvido]Ver Quem Está Usando Seu Banco de Dados

    avatar
    Bernidios
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 66
    Registrado : 17/07/2017

    [Resolvido]Ver Quem Está Usando Seu Banco de Dados Empty [Resolvido]Ver Quem Está Usando Seu Banco de Dados

    Mensagem  Bernidios 20/9/2017, 18:46

    Olá amigos.

    Estou na fase final de desenvolvimento do meu programa, e ele já está sendo usado por cerca de 50 pessoas.

    Por esse motivo não estou conseguindo publicar atualizações para melhoria no uso do mesmo, pois ele fica como Locked ACCDB (LACCDB), pois as tabelas principais estão abertas ou sendo usadas nos desktops dos usuários.

    Atualmente utilizo do método que encontrei de versionamento, no qual eu mudo a versão, no caso coloco como Manut, e assim consigo editar após todas as pessoas serem desconectadas, pois quando as mesmas atualizam o formulário principal, a função de versionamento é executada, e desconecta os usuários.

    Porém existe o caso de algumas pessoas estarem em horário de almoço ou em reunião, e nesse caso não consigo desconectar a pessoa, pois ela não vai atualizar o formulário principal, já que não está usando a ferramenta, pois ela está em segundo plano.

    Teria algum jeito de eu desconectar todos os usuários de minha ferramenta de uma única vez, na hora?

    Desde já obrigado!
    CassioFabre
    CassioFabre
    Super Avançado
    Super Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 731
    Registrado : 18/01/2013

    [Resolvido]Ver Quem Está Usando Seu Banco de Dados Empty Re: [Resolvido]Ver Quem Está Usando Seu Banco de Dados

    Mensagem  CassioFabre 20/9/2017, 19:35

    Boa tarde,

    Eu já tive este problema e resolvi da seguinta maneira:

    Tenho um form oculto (formPassagem) que, no timer, verifica de tempos em tempos um arquivo que tenho na raiz do sistema no servidor (voce pode usar o que quiser, como já faz no seu caso aí) e caso esse arquivo seja encontrado (apenas pelo nome) eu faço com que o programa conte 1 minuto e feche, independente de o usuário permitir ou não. Deixei um minuto pois dá tempo do usuário terminar alguma coisa que esteja fazendo de importante.

    No form passagem:
    Código:
            If Not getUsuarioAtual = "admin" Then
                If booVar = False Then
                    If getGrupoUsuarioAtual <> "Administradores" Then
                        Dim str As String
                       
                        str = pastaBackEnd(mBd) & "maintenance.txt"

    'pastaBackEnd é uma função que tenho que retorna a pasta em que o banco de dados está alocado no servidor.
                       
                        If Len(Dir(str)) Then
                            DoCmd.OpenForm "formMensagemManutencao", , , , , acDialog
                        End If
                    End If
                   
                    Exit Sub
                End If
       
                If contador = 50 Then
                    MsgBox "Você tem apenas 10 segundos para terminar suas tarefas.", vbInformation, "Manutenção"
                ElseIf contador = 60 Then
                    MsgBox "O tempo acabou. Neste momento é necessário fechar o sistema para manutenção.", vbInformation, "Manutenção"
                    DoCmd.Quit
                End If
                       
                contador = contador + 1
            End If

    No formMensagemManutencao
    Código:
    Private Sub Form_Close()
        Forms!formPassagem.booVar = True
    End Sub

    Private Sub Form_Open(Cancel As Integer)
        txtMensagem.ForeColor = vbBlack
        txtMensagem = "Foi solicitada uma manutenção no sistema. Durante este período, apenas usuários habilitados poderão acessá-lo. " & _
            "A partir do fechamento deste formulário, você terá 1 minuto para concluir suas operações." & vbCrLf & vbCrLf & _
            "Agradecemos a compreensão e o sistema estará disponível o quanto antes. Obrigado."
    End Sub

    Do jeito que está aí, gera o inconveniente do usuário ter que apertar OK nas msgbox pro tempo contar, já que tanto forms modo diálogo quanto msgbox travam todos os processos em execução. Adapte ao seu projeto.

    Abraço.
    JPaulo
    JPaulo
    Moderador
    Moderador


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 11026
    Registrado : 04/11/2009

    [Resolvido]Ver Quem Está Usando Seu Banco de Dados Empty Re: [Resolvido]Ver Quem Está Usando Seu Banco de Dados

    Mensagem  JPaulo 21/9/2017, 00:20

    Excelente dica a do Cássio.

    Este tópico pode também ajudar.

    https://www.maximoaccess.com/t2963-resolvidofechar-banco-de-dados


    .................................................................................
    Contribua com o maximoaccess nos links abaixo, ajude a melhorar este que é o seu site na NET.

    Pay-Pal R$ Aqui
    Pay-Pal € Aqui

    Ou ainda: Aqui (Novo)

    Sucesso e Bons Estudos
    Success and Good Studies

    [Resolvido]Ver Quem Está Usando Seu Banco de Dados Folder_announce_new Utilize o Sistema de Busca do Fórum...
    [Resolvido]Ver Quem Está Usando Seu Banco de Dados Folder_announce_new 102 Códigos VBA Gratuitos...
    [Resolvido]Ver Quem Está Usando Seu Banco de Dados Folder_announce_new Instruções SQL como utilizar...
    avatar
    Bernidios
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 66
    Registrado : 17/07/2017

    [Resolvido]Ver Quem Está Usando Seu Banco de Dados Empty [Resolvido]Ver Quem Está Usando Seu Banco de Dados

    Mensagem  Bernidios 21/9/2017, 18:38

    Amigos CassioFabre e JPaulo,

    Muito obrigado pela disponibilização dos códigos e links!

    Usei o codigo do Cassio e fiz algumas alterações para o mesmo se adaptar a minha ferramenta.

    Esse código foi de grande ajuda, quebrou um galho, pois a cada 2 ou 3 horas estou atualizando o programa e isso dificultava e atrasava muito meu trabalho!

    Obrigado mesmo.

    E se for de ajuda para os demais coloco o código alterado aqui para uso de todos, se for solicitado.

    Mais uma vez, muito obrigado pela ajuda!

    Conteúdo patrocinado


    [Resolvido]Ver Quem Está Usando Seu Banco de Dados Empty Re: [Resolvido]Ver Quem Está Usando Seu Banco de Dados

    Mensagem  Conteúdo patrocinado


      Data/hora atual: 22/11/2024, 03:29