MaximoAccess

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

Obrigado

Administração do MaximoAccess

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

    Abrir formulário apenas para alguns usuários logados no Windows

    Compartilhe

    lekcunha
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Anónimo
    Mensagens : 35
    Registrado : 06/11/2014

    Abrir formulário apenas para alguns usuários logados no Windows

    Mensagem  lekcunha em 1/11/2017, 13:45

    Nobres,king

    bom dia!

    Procurei em toda Net e no Maximo Access mas não encontrei.

    Preciso de ajuda com um código VBA que permita abrir um formulário apenas para usuários logados no Windows.

    Esses usuários seriam pré-cadastrados numa listagem.

    Se o usuário não constar na lista, o sistema exibiria uma mensagem de Acesso Negado e fecharia o Access.

    Poderiam ajudar?

    Agradeço desde já! Wink
    avatar
    CassioFabre
    Moderador
    Moderador

    Respeito às Regras 100%

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

    Re: Abrir formulário apenas para alguns usuários logados no Windows

    Mensagem  CassioFabre em 1/11/2017, 15:18

    Boa tarde,

    Simples. No open do form coloque:
    Código:
        If DCount("codigo", "tbl", "usuario = '" & user & "'") = 0 Then
            MsgBox "Voce nao possui permissão para acesso!", vbCritical, "Acesso"
            Cancel = True
        End If

    Onde:
    - tbl: tabela onde estão pre cadastrados os usuarios autorizados
    - usuario: campo da tabela onde tem o nome do usuario (voce pode usar o codigo também, é só um modelo isso aqui)
    - user: variável que identifica o usuário logado no sistema

    Abraço.


    .................................................................................
    Só não tem código pra morte!

    lekcunha
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Anónimo
    Mensagens : 35
    Registrado : 06/11/2014

    Re: Abrir formulário apenas para alguns usuários logados no Windows

    Mensagem  lekcunha em 1/11/2017, 18:24

    Obrigado, CassioFabre!

    Porém ao adaptar seu código, o Access acusa a mensagem "Variável não definida" para o USER.


    lekcunha
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Anónimo
    Mensagens : 35
    Registrado : 06/11/2014

    Re: Abrir formulário apenas para alguns usuários logados no Windows

    Mensagem  lekcunha em 1/11/2017, 18:39

    CassioFabre,

    resolvi o erro declarando a variável assim;

    Dim USER As Integer.

    Porém agora, surge o erro em anexo.

    Pode ajudar? Wink
    avatar
    CassioFabre
    Moderador
    Moderador

    Respeito às Regras 100%

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

    Re: Abrir formulário apenas para alguns usuários logados no Windows

    Mensagem  CassioFabre em 1/11/2017, 18:53

    Boa tarde,

    Amigo, repare bem na legenda que eu coloquei na outra mensagem:
    Onde:
    - tbl: tabela onde estão pre cadastrados os usuarios autorizados
    - usuario: campo da tabela onde tem o nome do usuario (voce pode usar o codigo também, é só um modelo isso aqui)
    - user: variável que identifica o usuário logado no sistema

    No código que eu postei, substitua respectivamente:

    - tbl pelo nome da tabela onde estão cadastrados os usuários que poderão acessar o formulário.
    - usuario nome do campo da tabela citada acima, onde está o nome do usuário que poderá acessar o formulário.
    - user a variável que indentifica o usuário logado no momento. Por exemplo, como voce sabe que o usuário logado no seu sistema é o joão e não o pedro? Deve ter alguma variável do tipo "UsuarioAtual" no seu sistema, se tiver, voce vai colocar essa variável aí. Se tiver usando uma valor numérico, ou seja, identificar o usuário atual pelo codigo dele, lembre-se de retirar as aspas simples.

    Se de toda forma não conseguir adaptar, poste parte do seu bd aqui para darmos uma olhada.

    Abraço.


    .................................................................................
    Só não tem código pra morte!

    lekcunha
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Anónimo
    Mensagens : 35
    Registrado : 06/11/2014

    Re: Abrir formulário apenas para alguns usuários logados no Windows

    Mensagem  lekcunha em 1/11/2017, 19:08

    Então, CassioFabre.

    Eu entendi sua legenda, é que troquei o campo usuariopor USER_ID para entrar em conformidade com minha tabela de usuários.

    Acho que o problema é que uso na Tabela Principal de Cadastros o recurso =Ambiente("Username") para saber quem está logado no Windows.

    Talvez tenha que alterar a variável user que você sugeriu para =Ambiente("Username"), correto?

    Poderia informar a sintaxe e o tipo da variável que eu teria de declarar?

    Mais uma vez, obrigado! Wink
    avatar
    CassioFabre
    Moderador
    Moderador

    Respeito às Regras 100%

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

    Re: Abrir formulário apenas para alguns usuários logados no Windows

    Mensagem  CassioFabre em 3/11/2017, 09:40

    Bom dia,

    Suponho aqui que o campo User_ID é um campo de texto e que o valor que sempre terá nele é o nome do usuário logado no windows, e não nenhum código numérico, voce pode usar a função Environ() e retornar esse nome. Ficaria algo assim:
    Código:
        If DCount("USER_ID", "tbl", "USER_ID = '" & Environ("username") & "'") = 0 Then
            MsgBox "Voce nao possui permissão para acesso!", vbCritical, "Acesso"
            Cancel = True
        End If

    Lembrando de substituir tbl pelo nome correto da tabela.

    Abraço.


    .................................................................................
    Só não tem código pra morte!
    avatar
    ahteixeira
    Moderador Global
    Moderador Global

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 5544
    Registrado : 15/03/2013

    Re: Abrir formulário apenas para alguns usuários logados no Windows

    Mensagem  ahteixeira em 25/9/2018, 08:44

    Olá a todos,

    Alex Cunha, como ficou a situação?

    Abraço

      Data/hora atual: 15/10/2018, 21:24