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

    Formulário de acesso a base de dados

    avatar
    anarpcoelho
    Novato
    Novato

    Respeito às regras : Respeito às Regras 100%

    Sexo : Feminino
    Localização : Portugal
    Mensagens : 11
    Registrado : 23/05/2012

    Formulário de acesso a base de dados Empty Formulário de acesso a base de dados

    Mensagem  anarpcoelho 5/1/2021, 18:16

    Boa tarde e um excelente ano de 2021 para todos. Precisava da vossa ajuda pois tenho uma base de dados criada em 2010 que deixou de funcionar. entretanto coloquei PtrSafe nos locais que me estava a dar erro e funcionou, só a entrada com login continuou sem funcionar. Sera que alguma funcionalidade mudou no recordset, sql?

    No fundo tem uma tabela com colaboradores e password e fazendo o login (na imagem em anexo) deveria fechar o formulario e abrir outro de entrada no sistema. O access reconhece o colaborador e se a pass esta correta mas não faz nada. e deixa alterar a pass mas não grava nada. O que me dá a entender que quando é necessário actualizar dados não está a fazer.

    Ao clicar no botão entrar:

    Private Sub ImgEntrar_Click()
    Call Entrar
    End Sub

    depois chama este código

    Private Sub Entrar()

    Dim objUsuario As New classeUsuario
    Dim intid_func As Integer
    Dim strSenha As String
    Dim intNivel As Integer
    Dim MyDB As Database
    Dim myset As Recordset
    Dim myform As Form_F_IdentUtilz
    Dim pp As String



    Qry = ""
    Qry = Qry + " SELECT id_func, senha"
    Qry = Qry + " FROM [TBL_Colaborador]"
    Qry = Qry + " WHERE (id_func = " & CodResCal & " )"


    If IsNull(CaixaLogin.Value) Then

    MsgBox "Escolha um nome para efectuar o login no sistema.", vbExclamation, "Login não informado..."

    ElseIf IsNull(CaixaSenha.Value) Then

    MsgBox "Digite a senha para efectuar o login no sistema.", vbExclamation, "Senha não informada..."

    Else

    intid_func = CaixaLogin.Value
    strSenha = CaixaSenha.Value


    If bloqueioGeral = "SIM" And intid_func <> "103" Then

    MsgBox "O Sistema está boqueado. Somente o ADMINISTRADOR" & vbCrLf & _
    "pode aceder neste momento." _
    , vbExclamation, "Sistema Bloqueado"

    Call encerrarAplicativo(True)

    End If


    If strSenha = criptografarSenha("123") Then

    If verificaid_func(intid_func, strSenha) Then

    MsgBox "Alterar a senha antes de efectuar o Login no sistema!", vbInformation, "Senha Padrão"
    Call alterarSenha

    Else
    CaixaSenha.SetFocus
    End If

    ElseIf verificaid_func(intid_func, strSenha) Then

    Call objUsuario.obter(intid_func)

    If objUsuario.status = "DESATIVADO" Then

    MsgBox "Caro Utilizador, seu Status no Sistema está configurado como DESATIVADO." & vbCrLf & _
    "Qualquer dúvida entre com conctato com o Administrador(22397)." _
    , vbExclamation, "Acesso Bloqueado"

    Call encerrarAplicativo(True)

    End If

    Call letUsuarioAtual(intid_func)
    Call letGrupoUsuarioAtual(objUsuario.dtGrupoUsuario.nomeGrupo)
    Call letNivelUsuarioAtual(objUsuario.codGrupo)


    DoCmd.Close

    Call abreFormulario("GOS", getNivelUsuarioAtual)

    Else

    CaixaSenha.SetFocus

    End If

    End If


    End Sub

    será que conseguem perceber o que não está a funcionar direito?

    Obrigada
    avatar
    hannemann.pa
    Novato
    Novato

    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1
    Registrado : 22/10/2015

    Formulário de acesso a base de dados Empty Re: Formulário de acesso a base de dados

    Mensagem  hannemann.pa 12/1/2021, 10:09

    Olá Ana,

    O que eu percebi é que você fecha a formulário "DoCmd.Close", e depois tem a instrução "Call abreFormulario("GOS", getNivelUsuarioAtual)".

    Então tente primeiramente abrir e depois encerrar o formulário de login.

    Boa sorte!
    avatar
    anarpcoelho
    Novato
    Novato

    Respeito às regras : Respeito às Regras 100%

    Sexo : Feminino
    Localização : Portugal
    Mensagens : 11
    Registrado : 23/05/2012

    Formulário de acesso a base de dados Empty Re: Formulário de acesso a base de dados

    Mensagem  anarpcoelho 12/1/2021, 11:28

    Olá Hannemann,

    Ficou igual Sad não faz nada!

    Obrigada pela resposta
    Alexandre Fim
    Alexandre Fim
    Developer
    Developer

    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1470
    Registrado : 13/12/2016

    Formulário de acesso a base de dados Empty Re: Formulário de acesso a base de dados

    Mensagem  Alexandre Fim 12/1/2021, 20:03

    Olá Ana,

    Por gentileza, poste aqui seu sistema (somente partes envolvidas) para análise e possível solução.

    Grato


    .................................................................................
    - Procure sempre anexar seu projeto para análise do problema/dúvida.
    - Ao copiar/colar um código VBA, procure entender seu funcionamento.
    - Se o problema foi resolvido, não se esqueça de marcar o tópico como RESOLVIDO.

      Data/hora atual: 17/6/2021, 18:37