MaximoAccess

Caro Usuário, não tire as suas duvidas nas Salas de Repositório, abra sempre um novo tópico relacionado, nas salas destinadas para o efeito, como Sala de Tabelas, Consultas, Formulários, Relatórios, Macros, Módulos e VBA.

Obrigado

Administração do MaximoAccess

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

    [Resolvido]Mostrar todos os usuários logados no Back End(1)

    Compartilhe

    diegojacob
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 118
    Registrado : 06/07/2011

    Mostrar todos os usuários logados no Back End(1)

    Mensagem  diegojacob em Ter 13 Set 2011, 19:38

    Donizeth,
    você criou a tabela corretamente com os campos informados no exemplo?
    Nome da tabela: tbl_Logged_user
    Nome dos campos: Data_Acesso / UserAccess / UserWindows / CPU_Name / IP

    Siga o último exemplo, o qual foi corrigido o erro deste código, conforme abaixo:

    Public Function LoggedUser(frm As Form, Optional bHasInactive As Boolean = False) As Boolean

    Dim User_Windows As String
    Dim CPU As String
    Dim IP_Number As String
    Dim USER_DB As String

    If UserAccessName = Null Then UserAccessName = 0

    User_Windows = GetUserName_TSB
    CPU = GetNetworkComp
    IP_Number = DameIpMaquina()
    USER_DB = UserAccessName

    DoCmd.SetWarnings False
    DoCmd.RunSQL "INSERT INTO tbl_Logged_user ( Data_Acesso,UserAccess,UserWindows,CPU_Name,IP) SELECT '" & Now() & "','" & USER_DB & "','" & User_Windows & "','" & CPU & "','" & IP_Number & " ';"

    Exit_LoggedUser:
    Exit Function

    End Function


    Abraços.

    vieirasoft
    Moderador Global
    Moderador Global

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 7125
    Registrado : 11/05/2010

    Re: [Resolvido]Mostrar todos os usuários logados no Back End(1)

    Mensagem  vieirasoft em Ter 13 Set 2011, 19:42

    Donizeth

    Eu movi o tópico para esta sala. Tenham paciência. Coloque a questão de novo, por favor.

    HARYSOHN
    Moderador Global
    Moderador Global

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 12246
    Registrado : 01/03/2011

    Re: [Resolvido]Mostrar todos os usuários logados no Back End(1)

    Mensagem  HARYSOHN em Ter 13 Set 2011, 20:50

    percebi somente agora que havia outro topico com a duvida...

    Bem creio que o Donizeth estã em boas mãos com o colega Diego.. Qualquer coisa estamos por aqui..

    Saudações


    .................................................................................
    PILOTO
    الله أكبر Paz, Justiça e Liberdade! الله أكبر
    CLIQUE AQUI E VEJA O VÍDEO >>> BIOMETRIA EM ACCESS

    Iniciando no Access? Então veja esse tópico e também esse


    BUSCA NO FÓRUM - CLIQUE AQUI!!!

    Quando tua dúvida for RESOLVIDA, dê retorno com AGRADECIMENTO a aqueles que gastaram seu tempo em te ajudar.
    Clique no botão Resolvido logo acima do botão Enviar, do lado direito. Todos nós agradecemos.  
    [Você precisa estar registrado e conectado para ver esta imagem.]

    donizeth
    Avançado
    Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 338
    Registrado : 07/08/2011

    Re: [Resolvido]Mostrar todos os usuários logados no Back End(1)

    Mensagem  donizeth em Qua 14 Set 2011, 19:31

    Diego,

    O código correto é o desta mensagem?

    Grava na tabela todos os campos menos o campo UserAccess

    diegojacob
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 118
    Registrado : 06/07/2011

    Re: [Resolvido]Mostrar todos os usuários logados no Back End(1)

    Mensagem  diegojacob em Qua 14 Set 2011, 19:40

    Donizeth,

    Sim!
    Mas conforme dito na mensagem anterior, precisamos saber como é o seu formulário de autenticação, e se ele já grava o usuário de acesso (no meu caso o UserAccess) numa variável pública, pois precisará disso para uso em tal aplicação. Aonde está acontecendo o problema.

    E conforme a solicitação do Amigo Harysohn:
    "Explique sua duvida novamente la por gentileza.. e nos fale como consegue o nome do usuario logado..

    Descreva todos os passos e o que esta a faltar.. se possivel poste parte do BD para vermos..."



    Pois no meu, eu fiz conforme a seguir:

    Criei um Módulo "Público":

    Public UserAccessName
    Public UserAccessPass
    Public UserAccessLevel
    Public UserAccessID


    Já no formulário de "Login/Acesso"

    Private Sub LoginButton_Click()

    Dim TrueName As String
    Dim TruePass As String
    Dim TrueLevel As String
    Dim TrueID As String


    ' Verifica Usuário existente
    Dim Rs As DAO.Recordset
    Set Rs = Me.RecordsetClone

    Rs.FindFirst "[Name]=" & "'" & Me.LoginName & "' and [Password]=" & "'" & Me.LoginPass & "'"

    If Not Rs.NoMatch Then

    TrueName = Rs.Fields("Name")
    TruePass = Rs.Fields("Password")
    TrueLevel = Rs.Fields("Level")
    TrueID = Rs.Fields("Matricula")

    UserAccessName = TrueName
    UserAccessPass = TruePass
    UserAccessLevel = TrueLevel
    UserAccessID = TrueID

    MsgBox "Banco de Dados está liberado para uso."

    DoCmd.Close

    DoCmd.Restore
    DoCmd.OpenForm "BLA"

    Else

    MsgBox "Invalid Password!"
    Me.LoginPass = ""

    End If

    End Sub



    Ficamos no aguardo.

    donizeth
    Avançado
    Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 338
    Registrado : 07/08/2011

    Re: [Resolvido]Mostrar todos os usuários logados no Back End(1)

    Mensagem  donizeth em Qua 14 Set 2011, 19:57

    No meu form de login tenho o seguinte codigo:
    Private Sub cmdEntrar_Click()
    Dim Identificacao As Integer

    If Me.txtSenha.Value = DLookup("[strPassword]", "[TBLUsers]", "[strUserID] = '" & Me.txtUser & "'") Then
    Identificacao = DLookup("[NivelSeguranca]", "[TBLUsers]", "[strUserID] = '" & Me.txtUser & "'")
    Select Case Identificacao
    Case 1
    stDocName = "formAdministrador"
    Case 2
    stDocName = "Menu Principal"


    End Select

    'DoCmd.Close
    Form.Visible = False

    DoCmd.OpenForm stDocName


    Else
    MsgBox "Senha Incorreta, coloque novamente.", vbInformation + vbOKOnly, "Erro"
    Me.txtSenha.Value = ""
    Exit Sub
    End If

    End Sub




    Private Sub txtUser_AfterUpdate()
    Me.txtSenha.SetFocus
    End Sub

    No meu form "Menu Principal" tenho uma caixa de texto com o valor padrão igual =[Formulários]![frmLogin]![txtUser], o menu principal fica invisivel após o usuário acessar os demais menus.

    No evento ao abrir do "Menu Principal" tenho o código:
    Private Sub Form_Open(Cancel As Integer)
    DoCmd.Maximize
    Dim User_Windows As String
    Dim CPU As String
    Dim IP_Number As String
    Dim USER_DB As String
    'Dim NomeLog As String


    If UserAccessName = Null Then UserAccessName = 0

    User_Windows = GetUserName_TSB ' (OK funiona corretamente)
    CPU = GetNetworkComp '(OK funiona corretamente)
    IP_Number = DameIpMaquina() '(OK funiona corretamente)
    USER_DB = UserAccessName '(OK funiona corretamente)

    DoCmd.SetWarnings False

    'Aqui ocorre o erro quando aciona o evento, sendo que tenho uma função similar que funciona corretamente.
    CurrentDb.Execute "INSERT INTO tblLoggedUsers ( DataLog,NomeLog,NomeUsuario,NomeCPU,IP)VALUES('" & Now() & "','" & USER_DB & "','" & User_Windows & "','" & CPU & "','" & IP_Number & " ')"

    'Também tentei conforme a dica do Criquio, mas não deu certo:

    'CurrentDb.Execute "INSERT INTO tbl_Logged_user ( Date,Login_name,User_Windows,CPU_Name,IP)VALUES('" & Now() & "','" & USER_DB & "','" & User_Windows & "','" & CPU & "','" & IP_Number & " ')"

    Exit_LoggedUser:

    End Sub

    Mas não consigo exito em gravar o usuário logado na tabela.

    diegojacob
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 118
    Registrado : 06/07/2011

    Re: [Resolvido]Mostrar todos os usuários logados no Back End(1)

    Mensagem  diegojacob em Qua 14 Set 2011, 20:46

    Donizeth, tente assim (Favor Fazer backup antes).

    Crie um novo Módulo "Publico" e declare:

    Public UserAccessName
    Public UserAccessPass
    Public UserAccessLevel
    Public UserAccessID

    Já no seu formulário de "Login/Acesso"

    Private Sub cmdEntrar_Click()

    Dim Identificacao As Integer
    Dim TrueName As String
    Dim TruePass As String

    ' Verifica Usuário existente
    Dim Rs As DAO.Recordset
    Set Rs = Me.RecordsetClone

    Rs.FindFirst "[Campo nome do usuário tabela]=" & "'" & Me."Nome campo usuário do formulário de Login" & "' and [campo senha da tabela]=" & "'" & Me."Campo senha do formuário de login" & "'"

    If Not Rs.NoMatch Then

    TrueName = Rs.Fields("Campo nome do usuário tabela")
    TruePass = Rs.Fields("campo senha da tabela")

    UserAccessName = TrueName
    UserAccessPass = TruePass

    Select Case Identificacao
    Case 1
    stDocName = "formAdministrador"
    Case 2
    stDocName = "Menu Principal"

    End Select

    MsgBox "Banco de Dados está liberado para uso."

    DoCmd.Close

    DoCmd.OpenForm stDocName

    Else
    MsgBox "Senha Incorreta, coloque novamente.", vbInformation + vbOKOnly, "Erro"
    Me.txtSenha.Value = ""
    Exit Sub
    End If

    End Sub


    Depois, substitua o código anterior (LoggedUser) por este:

    Public Function LoggedUser(frm As Form, Optional bHasInactive As Boolean = False) As Boolean

    Dim User_Windows As String
    Dim CPU As String
    Dim IP_Number As String
    Dim USER_DB As String

    If UserAccessName = Null Then UserAccessName = 0

    User_Windows = GetUserName_TSB
    CPU = GetNetworkComp
    IP_Number = DameIpMaquina()
    USER_DB = UserAccessName

    DoCmd.SetWarnings False
    DoCmd.RunSQL "INSERT INTO tbl_Logged_user ( Data_Acesso,UserAccess,UserWindows,CPU_Name,IP) SELECT '" & Now() & "','" & USER_DB & "','" & User_Windows & "','" & CPU & "','" & IP_Number & " ';"

    Exit_LoggedUser:
    Exit Function

    End Function



    Tente aí, mas não esqueça de fazer backup antes de qualquer alteração.

    Se puder, envie o Formulário de login no anexo da próxima mensagem, pois será mais fácil de lhe ajudar.

    Abraços.


    donizeth
    Avançado
    Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 338
    Registrado : 07/08/2011

    Re: [Resolvido]Mostrar todos os usuários logados no Back End(1)

    Mensagem  donizeth em Qua 14 Set 2011, 21:34

    Segue bd exemplo.

    HARYSOHN
    Moderador Global
    Moderador Global

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 12246
    Registrado : 01/03/2011

    Re: [Resolvido]Mostrar todos os usuários logados no Back End(1)

    Mensagem  HARYSOHN em Qua 14 Set 2011, 21:43

    Nao veio Donizeth, me envie no meu e-mail que posto aqui.

    [Você precisa estar registrado e conectado para ver este link.]


    .................................................................................
    PILOTO
    الله أكبر Paz, Justiça e Liberdade! الله أكبر
    CLIQUE AQUI E VEJA O VÍDEO >>> BIOMETRIA EM ACCESS

    Iniciando no Access? Então veja esse tópico e também esse


    BUSCA NO FÓRUM - CLIQUE AQUI!!!

    Quando tua dúvida for RESOLVIDA, dê retorno com AGRADECIMENTO a aqueles que gastaram seu tempo em te ajudar.
    Clique no botão Resolvido logo acima do botão Enviar, do lado direito. Todos nós agradecemos.  
    [Você precisa estar registrado e conectado para ver esta imagem.]

    HARYSOHN
    Moderador Global
    Moderador Global

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 12246
    Registrado : 01/03/2011

    Re: [Resolvido]Mostrar todos os usuários logados no Back End(1)

    Mensagem  HARYSOHN em Qui 15 Set 2011, 12:43

    Caro Diego.. Pedria auxiliar o colega com isto?

    [Você precisa estar registrado e conectado para ver este link.]

    Estou dando manutencão em uma rede.. e estou sem tempo no momento..

    Cumprimentos


    .................................................................................
    PILOTO
    الله أكبر Paz, Justiça e Liberdade! الله أكبر
    CLIQUE AQUI E VEJA O VÍDEO >>> BIOMETRIA EM ACCESS

    Iniciando no Access? Então veja esse tópico e também esse


    BUSCA NO FÓRUM - CLIQUE AQUI!!!

    Quando tua dúvida for RESOLVIDA, dê retorno com AGRADECIMENTO a aqueles que gastaram seu tempo em te ajudar.
    Clique no botão Resolvido logo acima do botão Enviar, do lado direito. Todos nós agradecemos.  
    [Você precisa estar registrado e conectado para ver esta imagem.]

    diegojacob
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 118
    Registrado : 06/07/2011

    Re: [Resolvido]Mostrar todos os usuários logados no Back End(1)

    Mensagem  diegojacob em Qui 15 Set 2011, 12:55

    Harysohn,
    não estou conseguindo abrir os arquivos, está dando erro "formato não conhecido", e estou usando o Access 2007.
    Ao menos você consegue abrir os arquivos?
    Pode ter ocorrido algum erro durante compactação pelo WinRar?

    Aguardo respostas.

    donizeth
    Avançado
    Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 338
    Registrado : 07/08/2011

    Re: [Resolvido]Mostrar todos os usuários logados no Back End(1)

    Mensagem  donizeth em Qui 15 Set 2011, 13:07

    Segue novamente no formato de 2003/2007. Vou enviar para o email do Harysohn para que poste para nós.

    HARYSOHN
    Moderador Global
    Moderador Global

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 12246
    Registrado : 01/03/2011

    Re: [Resolvido]Mostrar todos os usuários logados no Back End(1)

    Mensagem  HARYSOHN em Qui 15 Set 2011, 13:09

    Ele postou em 2010... Esperarei o reenvio


    .................................................................................
    PILOTO
    الله أكبر Paz, Justiça e Liberdade! الله أكبر
    CLIQUE AQUI E VEJA O VÍDEO >>> BIOMETRIA EM ACCESS

    Iniciando no Access? Então veja esse tópico e também esse


    BUSCA NO FÓRUM - CLIQUE AQUI!!!

    Quando tua dúvida for RESOLVIDA, dê retorno com AGRADECIMENTO a aqueles que gastaram seu tempo em te ajudar.
    Clique no botão Resolvido logo acima do botão Enviar, do lado direito. Todos nós agradecemos.  
    [Você precisa estar registrado e conectado para ver esta imagem.]

    HARYSOHN
    Moderador Global
    Moderador Global

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 12246
    Registrado : 01/03/2011

    Re: [Resolvido]Mostrar todos os usuários logados no Back End(1)

    Mensagem  HARYSOHN em Qui 15 Set 2011, 13:14

    Eis ai..

    Obrigado pela força Diego.

    [Você precisa estar registrado e conectado para ver este link.]


    .................................................................................
    PILOTO
    الله أكبر Paz, Justiça e Liberdade! الله أكبر
    CLIQUE AQUI E VEJA O VÍDEO >>> BIOMETRIA EM ACCESS

    Iniciando no Access? Então veja esse tópico e também esse


    BUSCA NO FÓRUM - CLIQUE AQUI!!!

    Quando tua dúvida for RESOLVIDA, dê retorno com AGRADECIMENTO a aqueles que gastaram seu tempo em te ajudar.
    Clique no botão Resolvido logo acima do botão Enviar, do lado direito. Todos nós agradecemos.  
    [Você precisa estar registrado e conectado para ver esta imagem.]

    diegojacob
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 118
    Registrado : 06/07/2011

    Re: [Resolvido]Mostrar todos os usuários logados no Back End(1)

    Mensagem  diegojacob em Qui 15 Set 2011, 16:25

    Donizeth,

    Também estou um pouco sem tempo devido ao trabalho, mas deu para resouver.
    Encaminhei seu banco para o amigo Harysohn, agora vamos esperar que ele poste aqui no site para você pegar.

    Excluí algumas coisinhas para dar foco apenas ao assunto em questão, depois é só adaptar ao seu banco Master.
    Alterei também o modo de como você faz o login, favor verificar.

    Uma dica, faça a adaptação de um exemplo que incluí no Repositório de Forum, vai deixar seu sistema bem bacana. ( [Você precisa estar registrado e conectado para ver este link.] )

    Qualquer problema é só avisar.

    Abraços.


    HARYSOHN
    Moderador Global
    Moderador Global

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 12246
    Registrado : 01/03/2011

    Re: [Resolvido]Mostrar todos os usuários logados no Back End(1)

    Mensagem  HARYSOHN em Qui 15 Set 2011, 18:19

    Segue o BD.

    Obrigado Diego

    [Você precisa estar registrado e conectado para ver este link.]


    .................................................................................
    PILOTO
    الله أكبر Paz, Justiça e Liberdade! الله أكبر
    CLIQUE AQUI E VEJA O VÍDEO >>> BIOMETRIA EM ACCESS

    Iniciando no Access? Então veja esse tópico e também esse


    BUSCA NO FÓRUM - CLIQUE AQUI!!!

    Quando tua dúvida for RESOLVIDA, dê retorno com AGRADECIMENTO a aqueles que gastaram seu tempo em te ajudar.
    Clique no botão Resolvido logo acima do botão Enviar, do lado direito. Todos nós agradecemos.  
    [Você precisa estar registrado e conectado para ver esta imagem.]

    diegojacob
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 118
    Registrado : 06/07/2011

    Re: [Resolvido]Mostrar todos os usuários logados no Back End(1)

    Mensagem  diegojacob em Seg 19 Set 2011, 13:35

    Donizeth,

    seu problema foi solucionado?
    Precisamos de respostas para mudar o Status do Tópico para [Resolvido].

    Abraços.

    vieirasoft
    Moderador Global
    Moderador Global

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 7125
    Registrado : 11/05/2010

    Re: [Resolvido]Mostrar todos os usuários logados no Back End(1)

    Mensagem  vieirasoft em Seg 26 Set 2011, 12:17

    Como não houve retorno, o tópico passa a resolvido. Qualquer coisa reabra, por favor.

    donizeth
    Avançado
    Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 338
    Registrado : 07/08/2011

    Re: [Resolvido]Mostrar todos os usuários logados no Back End(1)

    Mensagem  donizeth em Seg 26 Set 2011, 12:26

    ainda não resolvido.

    diegojacob
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 118
    Registrado : 06/07/2011

    Re: [Resolvido]Mostrar todos os usuários logados no Back End(1)

    Mensagem  diegojacob em Seg 26 Set 2011, 12:35

    Caro Donizeth,
    se não foi resolvido, precisamos saber o motivo, favor Detalhar seu problema.
    No aguardo.

    vieirasoft
    Moderador Global
    Moderador Global

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 7125
    Registrado : 11/05/2010

    Re: [Resolvido]Mostrar todos os usuários logados no Back End(1)

    Mensagem  vieirasoft em Qui 06 Out 2011, 11:13

    Como não houve retorno, o tópico passa a resolvido. Qualquer coisa reabra, por favor.

    wyss2000
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 48
    Registrado : 05/06/2011

    Re: [Resolvido]Mostrar todos os usuários logados no Back End(1)

    Mensagem  wyss2000 em Dom 03 Jul 2016, 16:25

    Prezados já postei no tópico [Você precisa estar registrado e conectado para ver este link.] mas acho que aqui vocês vão poder me responder também. Segue:

    "No meu caso eu utilizo um form sem dados (formato Access 2010) e este chama através de abas e janelas vários outros bancos de dados para edição.

    São 15 tabelas vinculadas do BE e fica difícil rastrear qual delas está aberta.

    Você tem alguma dica para fazer a consulta por BD e não por tabela?

    Obs.: Meu BD não possui um form Login.

    Aguardo. Obrigado."

    Pelo que vi das mensagens parece que existe uma forma de fazer isto através do formOpen mas nesse caso não retorna uma janela com todos os usuários logados ou retorna?

    Obrigado.

      Data/hora atual: Qua 07 Dez 2016, 08:39