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


2 participantes

    [Resolvido]Login Personalizado

    avatar
    ClebinhoDG
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 39
    Registrado : 10/06/2013

    [Resolvido]Login Personalizado Empty [Resolvido]Login Personalizado

    Mensagem  ClebinhoDG 15/7/2014, 02:44

    Olá, gostaria de saber se tem como eu implantar um sistema de login, aonde eu venha ter o Administrador, e usuários, sendo que ao cadastrar o usuário com o nome e senha, eu cadastrar a cidade deste usuário também, e ao acessar o banco de dados este usuário venha ter acesso aos registros apenas na sua cidade;


    Exemplo:

    Usuários:

    Administrador (Com Acesso a Todas as Cidades)
    Cleberson (Acesso Apenas a Cidade de São Paulo)
    good guy
    good guy
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1304
    Registrado : 05/02/2010

    [Resolvido]Login Personalizado Empty Login Personalizado

    Mensagem  good guy 16/7/2014, 15:25

    Olá Clebinho,

    Tente assim. No formulário principal que será aberto caso o login esteja correto.

    Código:
    Private Sub Form_Load()
    DoCmd.OpenForm "frmTesteLogin"             'Nome do formulário de login exemplo
    Dim sNome As String
    sNome = DLookup("Nome", "tblNiveis", "Codigo =1")  'Código 1 de administrador da tabela de níveis


    If Forms!frmTesteLogin!Login = sNome Then  
    Me.RecordSource = "SELECT * FROM SuaTabela"
    Else
    Dim sCidade As String
    Dim xNome As String

    xNome = Forms!frmTesteLogin!Login
    sCidade = DLookup("Cidade", "tblNiveis", "Nome= '" & xNome & "'")
    Me.RecordSource = "SELECT * FROM SuaTabela WHERE Cidade = '" & sCidade & "'"
    End If
    End Sub


    Última edição por good guy em 17/7/2014, 14:51, editado 1 vez(es)
    avatar
    ClebinhoDG
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 39
    Registrado : 10/06/2013

    [Resolvido]Login Personalizado Empty Re: [Resolvido]Login Personalizado

    Mensagem  ClebinhoDG 17/7/2014, 02:06

    não pude entender muito bem este código, estou enviando um exemplo do meu sistema de login
    good guy
    good guy
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1304
    Registrado : 05/02/2010

    [Resolvido]Login Personalizado Empty Login Personalizado

    Mensagem  good guy 17/7/2014, 15:15

    Olá Clebinho,

    Estou um pouco confuso. De onde vc pesquisa a Cidade da tabela Usuario ou tabClientes. Na tabela Usuario não tem o campo Cidade. Quem vai logar também serão os clientes, não é possível, certo?
    avatar
    ClebinhoDG
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 39
    Registrado : 10/06/2013

    [Resolvido]Login Personalizado Empty Re: [Resolvido]Login Personalizado

    Mensagem  ClebinhoDG 17/7/2014, 17:12

    desculpe good guy, eu esqueci de acrescentar este campo na tabela usuarios, vai ai o exemplo corrigido
    good guy
    good guy
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1304
    Registrado : 05/02/2010

    [Resolvido]Login Personalizado Empty Login Personalizado

    Mensagem  good guy 17/7/2014, 17:49

    Oá Clebinho,

    O código fica assim para o formulário frmClientes no seu evento Form_Load:


    Código:
    Private Sub Form_Load()
            Dim sNome As String
            Dim sSenha As String
            
            sNome = "ADMINISTRADOR"
            sSenha = DLookup("Senha", "Usuario", "Nome = 'ADMINISTRADOR'")
            
            If Forms!FLogin!CaixaLogin = sNome And Forms!FLogin!CaixaSenha = sSenha Then
            Me.RecordSource = "SELECT * FROM TabClientes"
            DoCmd.Close acForm, "FLogin"
            Else
            Dim sCidade As String
            Dim xNome As String

            xNome = Nz(Forms!FLogin!CaixaLogin)
            sCidade = Nz(DLookup("Cidade", "Usuario", "Nome= '" & xNome & "'"))
            Me.RecordSource = "SELECT * FROM TabClientes WHERE Cidade = '" & sCidade & "'"
            DoCmd.Close acForm, "FLogin"
            End If
        

    End Sub


    Última edição por good guy em 18/7/2014, 17:18, editado 1 vez(es)
    good guy
    good guy
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1304
    Registrado : 05/02/2010

    [Resolvido]Login Personalizado Empty Login Personalizado

    Mensagem  good guy 17/7/2014, 21:37

    Olá Clebinho,

    Por favor, faça uma correção no código de seu aplicativo conforme está no post acima. Esqueci de verificar a senha também.
    avatar
    ClebinhoDG
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 39
    Registrado : 10/06/2013

    [Resolvido]Login Personalizado Empty Re: [Resolvido]Login Personalizado

    Mensagem  ClebinhoDG 18/7/2014, 03:03

    ainda não consegui, vou tentar explicar melhor:

    no formulário FLogin eu que tenha apenas dois campos, o campo usuário e o campo senha

    ___________________________________________________________________________

    no formulário FPrincipal eu quero que contenham três campos, um usuário, outro senha, e outro cidade, ao o administrador cadastrar um novo usuário, entao escolher qual cidade do cadastro frmClientes este usuario vai ter acesso, Obs.: o administrador eu quero que tenha acesso a todas as cidades do frmClientes

    ___________________________________________________________________________

    uma ultima coisa, na tabela Usuario eu quero que no campo cidade, ela puxe as cidades diretas da tabCidades, ficando no formato de uma combox.

    desculpe-me no primeiro exemplo eu postei errado, verifique este exemplo que estou anexando agora.
    good guy
    good guy
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1304
    Registrado : 05/02/2010

    [Resolvido]Login Personalizado Empty Login Personalizado

    Mensagem  good guy 18/7/2014, 17:19

    Olá,

    Tente com este exemplo agora.
    Anexos
    [Resolvido]Login Personalizado AttachmentExemploLogin.zip
    Você não tem permissão para fazer download dos arquivos anexados.
    (288 Kb) Baixado 94 vez(es)
    avatar
    ClebinhoDG
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 39
    Registrado : 10/06/2013

    [Resolvido]Login Personalizado Empty Re: [Resolvido]Login Personalizado

    Mensagem  ClebinhoDG 18/7/2014, 19:04

    para o usuario Cleberson deu certo, só que no formulario FPrincipal a onde eu Cadastrava novos usuarios não esta mais cadastrando, eu quero que o administrador possa cadastrar e excluir os usuarios, no FPrincipal, colocando assim no campo Usuario o nome do Novo usuario, e juntamente ja a cidade deste usuario, e ao clicar em Cadastrar, gravar estas informações
    good guy
    good guy
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1304
    Registrado : 05/02/2010

    [Resolvido]Login Personalizado Empty Login Personalizado

    Mensagem  good guy 18/7/2014, 20:05

    Tente agora com este arquivo que incluí hoje às 16:37. Mantive seu código de inclusão e exclusão e só deixei o meu código no evento Form_Load do formulário frmClientes.
    Anexos
    [Resolvido]Login Personalizado AttachmentExemploLogin.zip
    Você não tem permissão para fazer download dos arquivos anexados.
    (276 Kb) Baixado 54 vez(es)
    avatar
    ClebinhoDG
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 39
    Registrado : 10/06/2013

    [Resolvido]Login Personalizado Empty Re: [Resolvido]Login Personalizado

    Mensagem  ClebinhoDG 18/7/2014, 22:32

    quando eu cliquei no botão cadastrar me apareceu este erro

    Private Sub BotaoIncluir_Click()
       
       If getUsuarioAtual = "ADMINISTRADOR" Then
           
           If Not IsNull(CaixaNovoUsuario) Then
               
               CaixaNovoUsuario = UCase(CaixaNovoUsuario)
               
               If MsgBox("Confirma a inclusão do usuário " & CaixaNovoUsuario & "?", vbQuestion + vbYesNo, "Novo Usuário") = vbYes Then
                   
                   If Not IsNull(DLookup("login", "Usuario", "login='" & CaixaNovoUsuario & "'")) Then
                       MsgBox "Nome de usuário já existente!", vbExclamation, "Novo Usuário"
                       CaixaNovoUsuario = Null
                       Exit Sub
                   End If
                   
                   DoCmd.SetWarnings False
                   DoCmd.RunSQL "Insert Into Usuario Values('" & CaixaNovoUsuario & "','123')"
                   DoCmd.SetWarnings True
                   MsgBox "Usuário incluído com sucesso!", vbExclamation, "Novo Usuário"
                   CaixaNovoUsuario = Null
                   CaixaNovoUsuario.Requery
               
               End If
           
           Else
               MsgBox "Informe o nome do usuário!", vbExclamation, "Novo Usuário"
           End If
       
       Else
           MsgBox "Somente o ADMINISTRADOR pode incluir novos usuários!", vbExclamation, "Novo Usuário"
           CaixaNovoUsuario = Null
       End If

    End Sub
    good guy
    good guy
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1304
    Registrado : 05/02/2010

    [Resolvido]Login Personalizado Empty Login Personalizado

    Mensagem  good guy 19/7/2014, 02:37

    Não mexi neste código embora me parecesse um pouco estranho este código de inserção. Mas considerando que em programação há tantas formas de executar uma só tarefa baseadas no código padrão. Mas vamos lá. Tente fazer do modo padrão.


    INSERT INTO Usuário (campo1, campo2) VALUES ('" & var1 & "', '" & var2 & "')


    Última edição por good guy em 27/1/2015, 13:42, editado 1 vez(es)
    avatar
    ClebinhoDG
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 39
    Registrado : 10/06/2013

    [Resolvido]Login Personalizado Empty Re: [Resolvido]Login Personalizado

    Mensagem  ClebinhoDG 19/7/2014, 03:36

    infelizmente nada, continua dando erro
    avatar
    ClebinhoDG
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 39
    Registrado : 10/06/2013

    [Resolvido]Login Personalizado Empty Re: [Resolvido]Login Personalizado

    Mensagem  ClebinhoDG 23/4/2015, 02:22

    finalmente consegui resolver, valeu mano good guy

    Dim login As String
    If getUsuarioAtual = "ADMINISTRADOR" Then

    If Not IsNull(CaixaNovoUsuario) Then

    CaixaNovoUsuario = UCase(CaixaNovoUsuario)

    If MsgBox("Confirma a inclusão do usuário " & CaixaNovoUsuario & "?", vbQuestion + vbYesNo, "Novo Usuário") = vbYes Then

    If Not IsNull(DLookup("login", "Usuario", "login='" & CaixaNovoUsuario & "'")) Then
    MsgBox "Nome de usuário já existente!", vbExclamation, "Novo Usuário"
    CaixaNovoUsuario = Null
    Exit Sub
    End If

    DoCmd.SetWarnings False

    DoCmd.RunSQL "INSERT INTO Usuario (login, senha, Cidade) VALUES ('" & CaixaNovoUsuario & "', '" & 123 & "', '" & cboCidades & "')"
    DoCmd.SetWarnings True
    MsgBox "Usuário incluído com sucesso!", vbExclamation, "Novo Usuário"
    CaixaNovoUsuario = Null
    CaixaNovoUsuario.Requery

    End If

    Else
    MsgBox "Informe o nome do usuário!", vbExclamation, "Novo Usuário"
    End If

    Else
    MsgBox "Somente o ADMINISTRADOR pode incluir novos usuários!", vbExclamation, "Novo Usuário"
    CaixaNovoUsuario = Null
    End If
    good guy
    good guy
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1304
    Registrado : 05/02/2010

    [Resolvido]Login Personalizado Empty Login Personalizado

    Mensagem  good guy 24/4/2015, 15:34

    Valeu pelo retorno, Clebinho. O fórum todo agradece.

    Dê uma curtida em minha página no Facebook.

    https://www.facebook.com/EduardoMachado

    Visite meu site:

    www.goodguyaccessvba.com.br

    Se quiser aprender mais adquira os meus dois livros DOMINE O ACCESS VBA e TÉCNICAS ESPECIAIS DE ACCESS VBA e você vai aprender isto e muito mais.

    Editora Livrorama(DOMINE ...):
    www.livrorama.com.br

    Editora Ciência Moderna(TÉCNICAS...):
    www.lcm.com.br


    Um grande abraço.

    "O temor do Senhor(respeito pela Palavra de Deus, leitura e obediência) é o princípio do conhecimento" (Prov. 1.7)
    Disse Jesus: "E conhecereis a Verdade e a Verdade vos libertará". (Jo 8.32)
    Disse Jesus: “Eu sou a luz do mundo; aquele que me segue, não andará em trevas, mas terá a luz da vida.” (Jo. 8.12)

    Conteúdo patrocinado


    [Resolvido]Login Personalizado Empty Re: [Resolvido]Login Personalizado

    Mensagem  Conteúdo patrocinado


      Data/hora atual: 26/4/2024, 11:56