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


    [Resolvido]Sistema de Autenticação de Usuários

    Jeferson de Paula
    Jeferson de Paula
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 361
    Registrado : 06/04/2013

    [Resolvido]Sistema de Autenticação de Usuários Empty Sistema de Autenticação de Usuários

    Mensagem  Jeferson de Paula 10/4/2013, 12:39

    Olá Pessoal,

    Eu gostaria de desenvolver um tipo de autenticação igual aos dos Bancos (Cartão, Senha e Chave de Acesso). Só que seria +/- assim: (Usuário, Senha, Chave de Acesso). Esta chave de acesso deve ter 3 (três) dígitos, sendo gerada aleatoriamente. Alguém tem algum exemplo ou uma dica de como posso fazer isso?

    Desde já agradeço a ajuda de vocês!


    .................................................................................
    Atenciosamente
    Aldo Jeferson de Paula
    Blog Support SQL Server
    Fórum Support SQL Server

    Quem nunca ouviu alguém falando mal do Microsoft®️ Access? Compartilhe suas experiências e conhecimentos, clique aqui e faça seu comentário!

    Tópicos Recomendáveis
    > Kit Geográfico 2013
    > Novo na Programação do Access?
    > Curso de Access/VBA Completo
    > Conceitos Básicos em T-SQL
    avatar
    Convidado
    Convidado


    [Resolvido]Sistema de Autenticação de Usuários Empty Re: [Resolvido]Sistema de Autenticação de Usuários

    Mensagem  Convidado 24/4/2013, 01:50

    Este procedimento abaixo gera números aleatórios



    Sub GeraNumero()
    alfanumerico = "ABCDEFGHIJKLMNOPQRSTUVXZYW1234567890abcdefghijklmnopqrstuvxzyw"
    For I = 1 To 24
    Randomize
    X = Int(Rnd * Len(alfanumerico)) + 1
    If InStr(1, sequencia, Mid(alfanumerico, X, 1)) Then
    I = I - 1
    Else
    sequencia = sequencia & Mid(alfanumerico, X, 1)
    End If
    Next
    MsgBox sequencia, vbOKOnly, "Código gerado"
    End Sub


    Cumprimentos.
    Jeferson de Paula
    Jeferson de Paula
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 361
    Registrado : 06/04/2013

    [Resolvido]Sistema de Autenticação de Usuários Empty Re: [Resolvido]Sistema de Autenticação de Usuários

    Mensagem  Jeferson de Paula 6/5/2013, 23:28

    Muito obrigado pela ajuda! O código foi muito preciso para uma outra função que estava precisando. Mas acho que não fui bem claro na minha dúvida, por favor, aguarde que vou postar um exemplo aqui! Valeu pela ajuda!


    .................................................................................
    Atenciosamente
    Aldo Jeferson de Paula
    Blog Support SQL Server
    Fórum Support SQL Server

    Quem nunca ouviu alguém falando mal do Microsoft®️ Access? Compartilhe suas experiências e conhecimentos, clique aqui e faça seu comentário!

    Tópicos Recomendáveis
    > Kit Geográfico 2013
    > Novo na Programação do Access?
    > Curso de Access/VBA Completo
    > Conceitos Básicos em T-SQL
    avatar
    Convidado
    Convidado


    [Resolvido]Sistema de Autenticação de Usuários Empty Re: [Resolvido]Sistema de Autenticação de Usuários

    Mensagem  Convidado 7/5/2013, 04:31

    O Fórum agradece o retorno.
    Jeferson de Paula
    Jeferson de Paula
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 361
    Registrado : 06/04/2013

    [Resolvido]Sistema de Autenticação de Usuários Empty Re: [Resolvido]Sistema de Autenticação de Usuários

    Mensagem  Jeferson de Paula 18/5/2013, 01:35

    Olá PILOTO,

    Estou aqui novamente, como prometido estou trazendo o exemplo no link abaixo, espero que dê para entender. Obrigado pela ajuda!

    Download


    .................................................................................
    Atenciosamente
    Aldo Jeferson de Paula
    Blog Support SQL Server
    Fórum Support SQL Server

    Quem nunca ouviu alguém falando mal do Microsoft®️ Access? Compartilhe suas experiências e conhecimentos, clique aqui e faça seu comentário!

    Tópicos Recomendáveis
    > Kit Geográfico 2013
    > Novo na Programação do Access?
    > Curso de Access/VBA Completo
    > Conceitos Básicos em T-SQL
    avatar
    Convidado
    Convidado


    [Resolvido]Sistema de Autenticação de Usuários Empty Re: [Resolvido]Sistema de Autenticação de Usuários

    Mensagem  Convidado 18/5/2013, 16:44

    Explique apartir desrte exemplo o que pretende.

    Cumprimentos.
    avatar
    Convidado
    Convidado


    [Resolvido]Sistema de Autenticação de Usuários Empty Re: [Resolvido]Sistema de Autenticação de Usuários

    Mensagem  Convidado 18/5/2013, 17:04

    vi o modelo.. mas como saber essa posição... de quais numeros estraí-la?

    De detalhes.

    cumprimentos.
    Jeferson de Paula
    Jeferson de Paula
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 361
    Registrado : 06/04/2013

    [Resolvido]Sistema de Autenticação de Usuários Empty Re: [Resolvido]Sistema de Autenticação de Usuários

    Mensagem  Jeferson de Paula 18/5/2013, 18:41

    Olá PILOTO,

    Então o que eu quero é o seguinte:

    Você sabe como se acessa uma conta no caixa eletrônico do Bradesco? Caso tenha conta em outro banco funciona +/- assim:

    Primeiro você insere o cartão da sua conta, supondo que você irá fazer um saque, ao selecionar a opção saque ele vai pedir à você para inserir chave de segurança que está na posição informada pelo próprio caixa eletrônico que corresponderá com o seu cartão de acesso, após ter feito isso terá de inserir sua senha de 6 dígitos e então a aplicação validará se a chave de acesso (3 dígitos) corresponde a chave do banco de dados e se a senha está correta para então liberar o saque. Correto?

    O que eu gostaria de fazer é semelhante a este sistema.

    O usuário da minha aplicação teria um cartão de acesso onde estaria 70 posições com 3 (dígitos) cada uma delas, e então ao executar a aplicação a primeira tela seria semelhante a do exemplo.

    Usuário: (no caso é o login do usuário)
    Senha: (a senha que o usuário criou em seu cadastro)
    Posição: (aqui o sistema deverá solicitar uma posição aleatoriamente e o usuário portando o cartão de acesso deverá inserir a chave (3 dígitos) que corresponde com a que o sistema solicitou)

    Após fazer esses procedimentos ele assim como o do Bradesco irá validar os dados e liberar/bloquear o acesso do usuário para aplicação.

    O problema é que não sei como fazer isso. A princípio eu pensei em fazer assim:

    Tabela

    tblUsuarios: onde os campos seriam ([IDDoUsuario]; [NomeDoUsuario]; [Login]; [SenhaDeAcesso]) entre outros campos de controle;
    tblChavesDeAcesso: onde os campos seriam: ([IDDoUsuario]; [Chave01]... [Chave70]);

    Mas não sei como fazer a validação no formulário ou VBA para a chave de acesso. O número da posição deverá corresponder com o campo da tabela [tblChavesDeAcesso] exemplo o campo [Chave33] é a posição 33 solicitada pelo sistema.

    Teria alguma ideia para isso?

    Obrigado pela atenção mais uma vez!


    .................................................................................
    Atenciosamente
    Aldo Jeferson de Paula
    Blog Support SQL Server
    Fórum Support SQL Server

    Quem nunca ouviu alguém falando mal do Microsoft®️ Access? Compartilhe suas experiências e conhecimentos, clique aqui e faça seu comentário!

    Tópicos Recomendáveis
    > Kit Geográfico 2013
    > Novo na Programação do Access?
    > Curso de Access/VBA Completo
    > Conceitos Básicos em T-SQL
    avatar
    Convidado
    Convidado


    [Resolvido]Sistema de Autenticação de Usuários Empty Re: [Resolvido]Sistema de Autenticação de Usuários

    Mensagem  Convidado 18/5/2013, 19:44

    Ok... Crie uma tabela chamada tblPosicoes... Com os campo ID_Pos(Num Automatica), Cliente_ID (Numero) e CpDig3 (Numero)
    Crie uma tabela tblClientes, Com os dados dos teu Cliente, o Primeiro campo (NumAutomatica) ID_Cliente, CpSenha, CpChave onde ficara a chace do cliente e os demais campos que achar conveniente com as informações do cliente

    Relacione as tabelas em uma relação um para muitos pelos campo ID_Cliente e Cliente_ID

    Crie um cliente ficticio e crie 70 registros com as 3 posicoes 3 para cada um dos 70 registros

    E me envie para que possamos fazer isto.


    Cumprimentos.
    avatar
    Convidado
    Convidado


    [Resolvido]Sistema de Autenticação de Usuários Empty Re: [Resolvido]Sistema de Autenticação de Usuários

    Mensagem  Convidado 18/5/2013, 19:54

    Ha.. na tblPosicoes, um campo denominado posicao numerado de 1 a 70...

    Cumprimentos.
    Jeferson de Paula
    Jeferson de Paula
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 361
    Registrado : 06/04/2013

    [Resolvido]Sistema de Autenticação de Usuários Empty Re: [Resolvido]Sistema de Autenticação de Usuários

    Mensagem  Jeferson de Paula 18/5/2013, 20:31

    Veja se isso aqui ajuda.

    Download


    .................................................................................
    Atenciosamente
    Aldo Jeferson de Paula
    Blog Support SQL Server
    Fórum Support SQL Server

    Quem nunca ouviu alguém falando mal do Microsoft®️ Access? Compartilhe suas experiências e conhecimentos, clique aqui e faça seu comentário!

    Tópicos Recomendáveis
    > Kit Geográfico 2013
    > Novo na Programação do Access?
    > Curso de Access/VBA Completo
    > Conceitos Básicos em T-SQL
    avatar
    Convidado
    Convidado


    [Resolvido]Sistema de Autenticação de Usuários Empty Re: [Resolvido]Sistema de Autenticação de Usuários

    Mensagem  Convidado 18/5/2013, 20:38

    Não era bem isso.. mas ja lhe envio o exemplo pronto.

    Cumprimentos.
    avatar
    Convidado
    Convidado


    [Resolvido]Sistema de Autenticação de Usuários Empty Re: [Resolvido]Sistema de Autenticação de Usuários

    Mensagem  Convidado 18/5/2013, 21:39

    Vamos la...

    1 - Criado a tabela tblCliente com os campos: ID_Cliente, CpSenha

    2 - Criado a tabela tblPosicoes com os campo ID_Pos, Cliente_ID, CpPosicao, CpContraSenha
    no campo posicao serão numerados de 1 a 70 e no cpContraSenha serão adicionados as mesmas

    3 - Criado um formulário para gerar as contra-senhas do cliente
    (Formulário GeraPosicoes)
    Selecione um cliente e clique em gerar, serão gerados 70 registros para o cliente com as contra-senhas em suas devidas posições
    Este código criará 70 loops inserindo os 70 registros para o cliente, a cada loop será chamada a função GeraNumero, gerando assim a contra senha
    Código:

    Private Sub btnGerar_Click()
    Dim X As Integer
    Dim ContraSenha As String

    For X = 1 To 70
    ContraSenha = GeraNumero
    CurrentDb.Execute "INSERT INTO TblPosicoes (Cliente_ID, CpPosicao,CpContraSenha) Values (""" & Me.cboCliente.Column(0) & """, """ & X & """, """ & GeraNumero & """) "
    Next X
    MsgBox "Contra-Senhas geradas com Sucesso!", vbInformation, "GERADO A CONTRA-SENHA"
    End Sub


    Function GeraNumero()
    alfanumerico = "ABCDEFGHIJKLMNOPQRSTUVXZYW1234567890abcdefghijklmnopqrstuvxzyw"
    For I = 1 To 3
    Randomize
    X = Int(Rnd * Len(alfanumerico)) + 1
    If InStr(1, Sequencia, Mid(alfanumerico, X, 1)) Then
    I = I - 1
    Else
    Sequencia = Sequencia & Mid(alfanumerico, X, 1)
    End If
    Next
    GeraNumero = Sequencia
    End Function


    4 - No formulário AutenticacaoDoUsuario, ao ser aberto chama a função GeraNumero que gerará 2 numeros referente a posição, esta posição será aleatória e será sempre diferente a cada abertura, observe que no final do código coloco uma condição para que se o primeiro número da posição for 8 ou 9 reinicia a função para assim gerar números de 01 a 70

    Private Sub Form_Load()
    Me.Posicao = GeraNumero
    End Sub

    Function GeraNumero()
    alfanumerico = "1234567890"
    Continuar:
    For I = 1 To 2
    Randomize
    X = Int(Rnd * Len(alfanumerico)) + 1
    If InStr(1, Sequencia, Mid(alfanumerico, X, 1)) Then
    I = I - 1
    Else
    Sequencia = Sequencia & Mid(alfanumerico, X, 1)
    If Left(Sequencia, 1) = 9 Or Left(Sequencia, 1) = 8 Then GoTo Continuar
    End If
    Next
    GeraNumero = Sequencia
    End Function


    5 - No botão entrar carrego um recordset filtrado pelo cliente e posição, e faço a comparação da contra senha digitada na caixa texto txtPosicão
    Foi adicionado o tratamento de erros para o erro 3075 caso não seja selecionado um cliente na combo

    Private Sub Entrar_Click()
    On Error GoTo TrataErro
    Dim Rs As Dao.Recordset

    StrSQL = "SELECT * From tblPosicoes WHERE Cliente_ID = " & Me.cboLogin.Column(0) & " And CpPosicao = " & Me.Posicao & ";"
    Set Rs = CurrentDb.OpenRecordset(StrSQL)

    If Rs(3) = Me.txtPosicao Then
    MsgBox "A posicão " & Me.Posicao & " é a " & Rs(3) & " e confere com a contra-senha informada", vbInformation, "CONFIRMADO"
    Else
    MsgBox "A contra-senha não confere", vbCritical, "Contra-Senha não confere"
    End If

    '~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    'Tratamento de Erros
    '~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    Exit_TrataErro:
    DoCmd.Hourglass False
    DoCmd.Echo True
    Exit Sub
    TrataErro:
    Select Case Err.Number
    Case 3075
    MsgBox "Selecione um Cliente para efetuar a entrada", vbCritical, "NEGADO"
    Exit Sub
    Case Else
    DoCmd.Hourglass False
    DoCmd.Echo True
    MsgBox "Erro Gerado no :" & Me.Name & " (Login)" _
    & vbNewLine & "Erro Número: " & Err.Number _
    & vbNewLine & "linha: " & Erl _
    & vbNewLine & "Descrição: " & Err.Description _
    & vbNewLine & "Por favor contate o Administrador de Sistema.", vbCritical, Err.Number & ", linha:" & Erl
    End Select

    End Sub


    Ps. Ja existe um cliente criado, abra o form GeraPosicoes e gere as contra senhas para este cliente depois teste no form AutenticacaoDoUsuario

    Cumprimentos.
    Jeferson de Paula
    Jeferson de Paula
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 361
    Registrado : 06/04/2013

    [Resolvido]Sistema de Autenticação de Usuários Empty Re: [Resolvido]Sistema de Autenticação de Usuários

    Mensagem  Jeferson de Paula 18/5/2013, 22:37

    Grande PILOTO, é mais um para o Repósito de arquivos do Máximo. Valeu cara, muito obrigado pela sua ajuda! Deu certíssimo! O que precisar e estiver ao meu alcance é só dar um grito!

    LINK para o repositório


    Última edição por PILOTO em 19/5/2013, 01:40, editado 2 vez(es) (Motivo da edição : Alterar o Link para o Repositório)


    .................................................................................
    Atenciosamente
    Aldo Jeferson de Paula
    Blog Support SQL Server
    Fórum Support SQL Server

    Quem nunca ouviu alguém falando mal do Microsoft®️ Access? Compartilhe suas experiências e conhecimentos, clique aqui e faça seu comentário!

    Tópicos Recomendáveis
    > Kit Geográfico 2013
    > Novo na Programação do Access?
    > Curso de Access/VBA Completo
    > Conceitos Básicos em T-SQL
    avatar
    Convidado
    Convidado


    [Resolvido]Sistema de Autenticação de Usuários Empty Re: [Resolvido]Sistema de Autenticação de Usuários

    Mensagem  Convidado 19/5/2013, 01:42

    Boas Jeferson... Alterei o link para o repositório pois eu ja havia postado o exemplo com os códigos.

    O Fórum agradece o Retorno.
    avatar
    Convidado
    Convidado


    [Resolvido]Sistema de Autenticação de Usuários Empty Re: [Resolvido]Sistema de Autenticação de Usuários

    Mensagem  Convidado 20/5/2013, 04:21

    Ao abrir o form ainda apresenta numerais de 71 a 79... para corrigir:

    Function GeraNumero()
    alfanumerico = "1234567890"
    Continuar:
    For I = 1 To 2
    Randomize
    X = Int(Rnd * Len(alfanumerico)) + 1
    If InStr(1, Sequencia, Mid(alfanumerico, X, 1)) Then
    I = I - 1
    Else
    Sequencia = Sequencia & Mid(alfanumerico, X, 1)
    If Left(Sequencia, 1) = 9 Or Left(Sequencia, 1) = 8 Then GoTo Continuar
    If Left(Sequencia, 1) = 7 And Left(Sequencia, 2) > 0 Then GoTo Continuar
    End If
    Next
    GeraNumero = Sequencia
    End Function

    Cumprimentos.
    Jeferson de Paula
    Jeferson de Paula
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 361
    Registrado : 06/04/2013

    [Resolvido]Sistema de Autenticação de Usuários Empty Re: [Resolvido]Sistema de Autenticação de Usuários

    Mensagem  Jeferson de Paula 20/5/2013, 12:44

    Opa! Também tinha percebido isso mas corrigi e ia postar o mesmo código mas como você já fez isso então mais uma vez valeu pela ajuda!


    .................................................................................
    Atenciosamente
    Aldo Jeferson de Paula
    Blog Support SQL Server
    Fórum Support SQL Server

    Quem nunca ouviu alguém falando mal do Microsoft®️ Access? Compartilhe suas experiências e conhecimentos, clique aqui e faça seu comentário!

    Tópicos Recomendáveis
    > Kit Geográfico 2013
    > Novo na Programação do Access?
    > Curso de Access/VBA Completo
    > Conceitos Básicos em T-SQL
    avatar
    Convidado
    Convidado


    [Resolvido]Sistema de Autenticação de Usuários Empty Re: [Resolvido]Sistema de Autenticação de Usuários

    Mensagem  Convidado 20/5/2013, 16:05

    O Fórum agradece o retorno.
    Jeferson de Paula
    Jeferson de Paula
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 361
    Registrado : 06/04/2013

    [Resolvido]Sistema de Autenticação de Usuários Empty Re: [Resolvido]Sistema de Autenticação de Usuários

    Mensagem  Jeferson de Paula 22/5/2013, 04:43

    Olá PILOTO,

    Tentei fazer com que a aplicação bloqueasse o usuário após 3 (três) tentativas inválidas mas infelizmente não consegui. Você teria alguma ideia de como fazer isso acontecer? Estou usando um campo de Status do tipo Sim/Não (Tree/False).

    Desde já agradeço a ajuda e a atenção!


    .................................................................................
    Atenciosamente
    Aldo Jeferson de Paula
    Blog Support SQL Server
    Fórum Support SQL Server

    Quem nunca ouviu alguém falando mal do Microsoft®️ Access? Compartilhe suas experiências e conhecimentos, clique aqui e faça seu comentário!

    Tópicos Recomendáveis
    > Kit Geográfico 2013
    > Novo na Programação do Access?
    > Curso de Access/VBA Completo
    > Conceitos Básicos em T-SQL
    Jeferson de Paula
    Jeferson de Paula
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 361
    Registrado : 06/04/2013

    [Resolvido]Sistema de Autenticação de Usuários Empty Re: [Resolvido]Sistema de Autenticação de Usuários

    Mensagem  Jeferson de Paula 22/5/2013, 15:31

    Estou com um erro neste sistema de autenticação (3075):

    Código:

    'Criado por: PILOTO Máximo Access
    'Adaptado por: Jeferson de Paula
    '18 de maio de 2013 às 18h32min

    Private Sub Conectar_Click()
    Dim Rs As DAO.Recordset

        StrSQL = "SELECT * From [AutenticacaoDeUsuarios] WHERE [CPF] = " & Me.CPFDoFuncionario & " And [NumeroDaPosicao] = " & Me.Posicao & ";"
        Set Rs = CurrentDb.OpenRecordset(StrSQL)
       
      If Rs(3) = Me.ChaveDaPosicao Then
          MsgBox "A posicão  " & Me.Posicao & "  é a  " & Rs(3) & " e confere com a contra-senha informada", vbInformation, "Sucesso na Validação"
      Else
          MsgBox "A contra-senha não confere", vbCritical, "Contra-Senha não confere"
      End If
     
    End Sub

    O Campo do CPF do Funcionário não do tipo ComboBox e sim Text.

    Download PrintScn

    Desde já agradeço a ajuda!


    .................................................................................
    Atenciosamente
    Aldo Jeferson de Paula
    Blog Support SQL Server
    Fórum Support SQL Server

    Quem nunca ouviu alguém falando mal do Microsoft®️ Access? Compartilhe suas experiências e conhecimentos, clique aqui e faça seu comentário!

    Tópicos Recomendáveis
    > Kit Geográfico 2013
    > Novo na Programação do Access?
    > Curso de Access/VBA Completo
    > Conceitos Básicos em T-SQL
    avatar
    Convidado
    Convidado


    [Resolvido]Sistema de Autenticação de Usuários Empty Re: [Resolvido]Sistema de Autenticação de Usuários

    Mensagem  Convidado 22/5/2013, 16:24

    Para o bloqueio do funcionário...

    Crie módulo e denomine mdlVariaveis , crie uma variável publica, esta ao ser carregada quando do erro no ligin não perderá o seu valor e vá a incrementando, quando for = 3 utilize o CurrrentDb.Execute "UPADATE ..... para atualizar o seu campo Sim/Não.


    No Módulo

    Option Compare Database
    Dim IntLog as integer


    e no código quando der erro no login

    IntLog = IntLog + 1
    If IntLog = 3 Then
    IntLog = ""
    CurrentDb.Execute "UPADATE ......
    End If

    Cumprimentos.
    avatar
    Convidado
    Convidado


    [Resolvido]Sistema de Autenticação de Usuários Empty Re: [Resolvido]Sistema de Autenticação de Usuários

    Mensagem  Convidado 22/5/2013, 16:27

    Se o campo é texto, deve ficar entre aspas duplas e simples:

    '" & Me.CPFDoFuncionario & "'


    Cumprimentos.
    Jeferson de Paula
    Jeferson de Paula
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 361
    Registrado : 06/04/2013

    [Resolvido]Sistema de Autenticação de Usuários Empty Re: [Resolvido]Sistema de Autenticação de Usuários

    Mensagem  Jeferson de Paula 22/5/2013, 18:44

    Olá PILOTO,

    Cara, mais uma vez obrigadão pela ajuda, mas não consegui fazer a aplicação bloquear o usuário. É para colocar o código de UPDATE abaixo da Mensagem de erro da Autenticação de Login?



    .................................................................................
    Atenciosamente
    Aldo Jeferson de Paula
    Blog Support SQL Server
    Fórum Support SQL Server

    Quem nunca ouviu alguém falando mal do Microsoft®️ Access? Compartilhe suas experiências e conhecimentos, clique aqui e faça seu comentário!

    Tópicos Recomendáveis
    > Kit Geográfico 2013
    > Novo na Programação do Access?
    > Curso de Access/VBA Completo
    > Conceitos Básicos em T-SQL
    avatar
    Convidado
    Convidado


    [Resolvido]Sistema de Autenticação de Usuários Empty Re: [Resolvido]Sistema de Autenticação de Usuários

    Mensagem  Convidado 22/5/2013, 20:28

    1 - Crie um módulo e nomeei mdlVariaveisPublicas
    2 - Neste módulo crie uma variavel pública: Public IntLog as Integer
    3 - Crie na tblClientes um campo chamado cpBloqueio do tipo sim não
    4 - No Botão:

    Private Sub Entrar_Click()
    On Error GoTo TrataErro
    Dim Rs As Dao.Recordset
    Dim Bloqueio as Integer
    'Aplico na variável o valor do Campo CpBloqueio para posterior checagem se o cliente está bloqueado
    Bloqueio = DLookup("CpBloqueio", "tblClientes", "ID_Cliente = " & Me.cboLogin.Column(0) & "")
    'Checo o valor de Bloqueio caso seja diferente de 0 emite mensagem e encerra a sub
    If Bloqueio <> 0 Then MsgBox "Cliente Bloqueado!", vbCritical, "BLOQUEADO": Exit Sub
    StrSQL = "SELECT * From tblPosicoes WHERE Cliente_ID = " & Me.cboLogin.Column(0) & " And CpPosicao = " & Me.Posicao & ";"
    Set Rs = CurrentDb.OpenRecordset(StrSQL)

    If Rs(3) = Me.txtPosicao Then
    MsgBox "A posicão " & Me.Posicao & " é a " & Rs(3) & " e confere com a contra-senha informada", vbInformation, "CONFIRMADO"
    Else
    MsgBox "A contra-senha não confere", vbCritical, "Contra-Senha não confere"
    'A cada login frustrado incrementa a variável pública em 1, após 3 tentativas bloqueia e limpa a variável
    IntLog = IntLog + 1
    If IntLog >= 3 Then
    IntLog = Empty
    CurrentDb.Execute "UPDATE tblClientes SET CpBloqueio = 1 WHERE ID_Cliente= " & Me.cboLogin.Column(0) & ";"
    MsgBox "Cliente Bloqueado!", vbCritical, "BLOQUEADO"
    End If
    End If

    '~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    'Tratamento de Erros
    '~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    Exit_TrataErro:
    DoCmd.Hourglass False
    DoCmd.Echo True
    Exit Sub
    TrataErro:
    Select Case Err.Number
    Case 3075
    MsgBox "Selecione um Cliente para efetuar a entrada", vbCritical, "NEGADO"
    Exit Sub
    Case Else
    DoCmd.Hourglass False
    DoCmd.Echo True
    MsgBox "Erro Gerado no :" & Me.Name & " (Login)" _
    & vbNewLine & "Erro Número: " & Err.Number _
    & vbNewLine & "linha: " & Erl _
    & vbNewLine & "Descrição: " & Err.Description _
    & vbNewLine & "Por favor contate o Administrador de Sistema.", vbCritical, Err.Number & ", linha:" & Erl
    End Select

    End Sub
    Jeferson de Paula
    Jeferson de Paula
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 361
    Registrado : 06/04/2013

    [Resolvido]Sistema de Autenticação de Usuários Empty Re: [Resolvido]Sistema de Autenticação de Usuários

    Mensagem  Jeferson de Paula 23/5/2013, 13:58

    Olá PILOTO,

    Ainda não consegui fazer a regra do bloqueio do usuário, aqui está a base de dados que estou a trabalhar. Esta base de dados está vinculada com outras base de dados e por ser uma empresa que já está no mercado a mais de 55 anos, então a regra de desenvolvimento é bem esdrúxula. Foi migrada para o 2003 em 2008.

    Download da Base de Dados

    Senha do Banco de Dados: P@$$w0rd#s3nh@#I

    Código:

    Regras de Desenvolvimento

    Todas as tabelas desse banco de dados estão vinculadas com outras base de dados em uma estrutura de pastas mais avançada. No caso do anexo não!

    Tabelas

    Começam com as 3 letras maiúsculas e após isso um hífen ( - ) e então o nome da tabela. Exemplo:

    Nome do Banco de Dados = Usuários
    Nome das Tabelas = USR-UsuariosDoSistema Ou USR-HistoricoDeAcessos [...]


    Estou a reformar este banco de dados com as regras de programação mais eficaz. Se puder dar mais uma ajudinha ficarei muito agradecido mesmo! Valeu pela atenção!


    .................................................................................
    Atenciosamente
    Aldo Jeferson de Paula
    Blog Support SQL Server
    Fórum Support SQL Server

    Quem nunca ouviu alguém falando mal do Microsoft®️ Access? Compartilhe suas experiências e conhecimentos, clique aqui e faça seu comentário!

    Tópicos Recomendáveis
    > Kit Geográfico 2013
    > Novo na Programação do Access?
    > Curso de Access/VBA Completo
    > Conceitos Básicos em T-SQL
    avatar
    Convidado
    Convidado


    [Resolvido]Sistema de Autenticação de Usuários Empty Re: [Resolvido]Sistema de Autenticação de Usuários

    Mensagem  Convidado 23/5/2013, 14:52

    Veja ai funcionando, tente adaptar

    Cumprimentos.
    Jeferson de Paula
    Jeferson de Paula
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 361
    Registrado : 06/04/2013

    [Resolvido]Sistema de Autenticação de Usuários Empty Re: [Resolvido]Sistema de Autenticação de Usuários

    Mensagem  Jeferson de Paula 23/5/2013, 18:10

    Valeu PILOTO, consegui, mais uma vez obrigado pela ajuda!


    .................................................................................
    Atenciosamente
    Aldo Jeferson de Paula
    Blog Support SQL Server
    Fórum Support SQL Server

    Quem nunca ouviu alguém falando mal do Microsoft®️ Access? Compartilhe suas experiências e conhecimentos, clique aqui e faça seu comentário!

    Tópicos Recomendáveis
    > Kit Geográfico 2013
    > Novo na Programação do Access?
    > Curso de Access/VBA Completo
    > Conceitos Básicos em T-SQL
    avatar
    Convidado
    Convidado


    [Resolvido]Sistema de Autenticação de Usuários Empty Re: [Resolvido]Sistema de Autenticação de Usuários

    Mensagem  Convidado 23/5/2013, 22:13

    O Fórum agradece o Retorno.

    Conteúdo patrocinado


    [Resolvido]Sistema de Autenticação de Usuários Empty Re: [Resolvido]Sistema de Autenticação de Usuários

    Mensagem  Conteúdo patrocinado


      Data/hora atual: 19/4/2024, 12:12