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

    [Resolvido]Bloquear Botao de Comando

    avatar
    NADIRONUNES
    Avançado
    Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 429
    Registrado : 30/08/2010

    [Resolvido]Bloquear Botao de Comando Empty [Resolvido]Bloquear Botao de Comando

    Mensagem  NADIRONUNES em 25/10/2018, 16:04

    bom dia!!!

    Como q faco pra usar um bloqueio de botao usando tipo essa funcao

    Public Function load_Veiculos(id)
    Call fncAbreConexao(102030)
    Dim Rst As DAO.Recordset
       Dim sSQL
       Dim FormAberto As Form
       Set FormAberto = Screen.ActiveForm
       sSQL = ""
       sSQL = "select * from Veiculos where Placa = '" & id & "'"
       Set Rst = db.OpenRecordset(sSQL)
       If Not Rst.EOF Then
            FormAberto.T_CNPJ = Rst("cpf").Value
            FormAberto.T_FORNECEDOR = Rst("Proprietario").Value
            FormAberto.T_CEP = Rst("cep").Value
            FormAberto.T_endereco = Rst("Endereco").Value
            FormAberto.T_Cidade = Rst("cidade").Value
            FormAberto.T_UF = Rst("uf").Value
            FormAberto.T_IE = Rst("ie").Value
            FormAberto.T_Placa = Rst("placa").Value
       End If
       Rst.Close
       Set Rst = Nothing
    End Function

    esses botao tem nomes especifico Salvar, Excluir, Atualizar
    e estao em varios formularios preciso de uma funcao q faz isso em varios Formularios

    Alexandre Neves
    Alexandre Neves
    Moderador Global
    Moderador Global

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 7238
    Registrado : 05/11/2009

    [Resolvido]Bloquear Botao de Comando Empty Re: [Resolvido]Bloquear Botao de Comando

    Mensagem  Alexandre Neves em 25/10/2018, 18:40

    Boa tarde
    Utilize FormAberto.Locked=true


    .................................................................................
    Access 2010. Mande bd que dê para testar (indique a versão). Não peça para fazer o que já tem feito. Dê todos os detalhes.
    Não coloquem entraves como senhas, esconder controlos, etc. Disponibilizem o mais limpo possível
    Só respondo a mensagens privadas, se forem de assunto privado; às outras não respondo.
    Quem trabalha e mata a fome não come o pão de ninguém; mas quem não trabalha e come, come sempre o pão de alguém. António Aleixo
    avatar
    NADIRONUNES
    Avançado
    Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 429
    Registrado : 30/08/2010

    [Resolvido]Bloquear Botao de Comando Empty Re: [Resolvido]Bloquear Botao de Comando

    Mensagem  NADIRONUNES em 25/10/2018, 19:10

    mas tenho uma tabela q define se pode ser bloqueado ou nao cada botao
    Alexandre Neves
    Alexandre Neves
    Moderador Global
    Moderador Global

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 7238
    Registrado : 05/11/2009

    [Resolvido]Bloquear Botao de Comando Empty Re: [Resolvido]Bloquear Botao de Comando

    Mensagem  Alexandre Neves em 25/10/2018, 19:16

    Agora percebi
    FormAberto.Locked=Rst("NomeCampo")


    .................................................................................
    Access 2010. Mande bd que dê para testar (indique a versão). Não peça para fazer o que já tem feito. Dê todos os detalhes.
    Não coloquem entraves como senhas, esconder controlos, etc. Disponibilizem o mais limpo possível
    Só respondo a mensagens privadas, se forem de assunto privado; às outras não respondo.
    Quem trabalha e mata a fome não come o pão de ninguém; mas quem não trabalha e come, come sempre o pão de alguém. António Aleixo
    avatar
    NADIRONUNES
    Avançado
    Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 429
    Registrado : 30/08/2010

    [Resolvido]Bloquear Botao de Comando Empty Re: [Resolvido]Bloquear Botao de Comando

    Mensagem  NADIRONUNES em 25/10/2018, 19:23

    Alexandre

    quero bloquear o botao tipo o botao Salvar

    na tabela cada usuario tem sua permissao se pode ou nao pode pra cada botao
    isso e uma tabela de controle de Salvar,Excluir e Atualizar Registro pra cada um usuario



    https://www.dropbox.com/s/1bqujq2eq4ir6x9/2018-10-25.png?dl=0
    Alexandre Neves
    Alexandre Neves
    Moderador Global
    Moderador Global

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 7238
    Registrado : 05/11/2009

    [Resolvido]Bloquear Botao de Comando Empty Re: [Resolvido]Bloquear Botao de Comando

    Mensagem  Alexandre Neves em 25/10/2018, 20:37

    Utilize DLookup com o critério de utilizador


    .................................................................................
    Access 2010. Mande bd que dê para testar (indique a versão). Não peça para fazer o que já tem feito. Dê todos os detalhes.
    Não coloquem entraves como senhas, esconder controlos, etc. Disponibilizem o mais limpo possível
    Só respondo a mensagens privadas, se forem de assunto privado; às outras não respondo.
    Quem trabalha e mata a fome não come o pão de ninguém; mas quem não trabalha e come, come sempre o pão de alguém. António Aleixo
    avatar
    NADIRONUNES
    Avançado
    Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 429
    Registrado : 30/08/2010

    [Resolvido]Bloquear Botao de Comando Empty Re: [Resolvido]Bloquear Botao de Comando

    Mensagem  NADIRONUNES em 25/10/2018, 22:31

    mas pra fazer isso pra cada formulario, queria uma so funcao pra todos os forms onde tem esses botoes
    tenho essa funcao mas queria q ela funcionasse no formulario q esta aberto

    Public Function AtUsur(NomeForm As Form)
    Parametros_de_CUsuarios "SysCUsuario.par"
    Parametros_de_xUsuarios XLogin & ".sys"
    Call fncAbreConexao(102030)
    Dim Arq As Long
    Arq = FreeFile
    Dim cId As String
    Dim Filtro As String

    cId = Nz(DLookupX("[Codigo]", "usuario", "[login]= '" & L_Login & "'"), 0)
    Filtro = "objeto = '" & NomeForm.Name & "'"
    Filtro = "Idfuncao = " & Nz(DLookupX("[idFuncao]", "tblFunções", "[objeto]= '" & NomeForm.Name & "'"), 0) & " AND IdUsuario =" & cId

    If Nz(DLookupX("Excluir", "tblPermissõesUsuários", Filtro), "false") = False Then
    Else
    End If

    If Nz(DLookupX("Inserir", "tblPermissõesUsuários", Filtro), "false") = False Then
    Else
    End If

    If Nz(DLookupX("Atualizar", "tblPermissõesUsuários", Filtro), "false") = False Then
    Else
    End If

    If Nz(DLookupX("Impressao", "tblPermissõesUsuários", Filtro), "false") = False Then
    Else
    End If

    If Nz(DLookupX("Grafico", "tblPermissõesUsuários", Filtro), "false") = False Then
    Else
    End If
    End Function
    Alexandre Neves
    Alexandre Neves
    Moderador Global
    Moderador Global

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 7238
    Registrado : 05/11/2009

    [Resolvido]Bloquear Botao de Comando Empty Re: [Resolvido]Bloquear Botao de Comando

    Mensagem  Alexandre Neves em 26/10/2018, 20:13

    Boa noite
    Não conheço a função DLookupX mas tente:

    Public Function PodeExcluir(NomeForm As Form)as boolean
    Parametros_de_CUsuarios "SysCUsuario.par"
    Parametros_de_xUsuarios XLogin & ".sys"
    Call fncAbreConexao(102030)
    Dim Arq As Long
    Arq = FreeFile
    Dim cId As String
    Dim Filtro As String

    cId = Nz(DLookupX("[Codigo]", "usuario", "[login]= '" & L_Login & "'"), 0)
    Filtro = Nz(DLookupX("[idFuncao]", "tblFunções", "
    objeto = '" & NomeForm.Name & "' and IdUsuario =" & cId ))

    If Nz(DLookup("Excluir", "tblPermissõesUsuários", Filtro)) Then PodeExcluir=True

    End Function



    Para saber se tem permissão de excluir, no formulário chame If PodeExcluir(Me) Then ...
    Se funcionar, adapte para as restantes situações


    .................................................................................
    Access 2010. Mande bd que dê para testar (indique a versão). Não peça para fazer o que já tem feito. Dê todos os detalhes.
    Não coloquem entraves como senhas, esconder controlos, etc. Disponibilizem o mais limpo possível
    Só respondo a mensagens privadas, se forem de assunto privado; às outras não respondo.
    Quem trabalha e mata a fome não come o pão de ninguém; mas quem não trabalha e come, come sempre o pão de alguém. António Aleixo
    avatar
    NADIRONUNES
    Avançado
    Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 429
    Registrado : 30/08/2010

    [Resolvido]Bloquear Botao de Comando Empty Re: [Resolvido]Bloquear Botao de Comando

    Mensagem  NADIRONUNES em 26/10/2018, 21:13

    Alexandre

    os meus forms sao desvinculados e a funcao eu quero e pra botao de comando e nao para Formularios, quero mesmo e desativar os botao de comando com uma pesquisa nesta tabela que postei ai
    Alexandre Neves
    Alexandre Neves
    Moderador Global
    Moderador Global

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 7238
    Registrado : 05/11/2009

    [Resolvido]Bloquear Botao de Comando Empty Re: [Resolvido]Bloquear Botao de Comando

    Mensagem  Alexandre Neves em 26/10/2018, 21:43

    Amanhã ver-lhe-ei melhor a duvida


    .................................................................................
    Access 2010. Mande bd que dê para testar (indique a versão). Não peça para fazer o que já tem feito. Dê todos os detalhes.
    Não coloquem entraves como senhas, esconder controlos, etc. Disponibilizem o mais limpo possível
    Só respondo a mensagens privadas, se forem de assunto privado; às outras não respondo.
    Quem trabalha e mata a fome não come o pão de ninguém; mas quem não trabalha e come, come sempre o pão de alguém. António Aleixo
    Alexandre Neves
    Alexandre Neves
    Moderador Global
    Moderador Global

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 7238
    Registrado : 05/11/2009

    [Resolvido]Bloquear Botao de Comando Empty Re: [Resolvido]Bloquear Botao de Comando

    Mensagem  Alexandre Neves em 27/10/2018, 10:13

    Bom dia
    Veja se funciona como pretende
    Código:
    Public Sub GereBotoes(frm As Form)
        ''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
        '  código criado por Alexandre Neves, do Fórum MaximoAccess  '
        '    utilize o código livremente mas mantenha os créditos    '
        ''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
        On Error GoTo err_GereBotoes
        Dim ctl As Control, Rst As DAO.Recordset
       
        Set Rst = CurrentDb.OpenRecordset("SELECT * FROM tblPermissõesUsuários WHERE IdUsuario=" & DLookup("Codigo", "usuario", "login='" & L_Login & "'"))
               
        For Each ctl In frm.Controls
            Select Case ctl.Name
            Case "Salvar"
                ctl.Locked = Rst("Inserir")
            Case "Excluir"
                ctl.Locked = Rst("Excluir")
            Case "Atualizar"
                ctl.Locked = Rst("Atualizar")
            End Select
        Next
       
    exit_GereBotoes:
        Rst.Close
        Set Rst = Nothing
        Exit Sub
       
    err_GereBotoes:
        MsgBox str(err)
        MsgBox err.Description
        Resume exit_GereBotoes
    End Sub


    .................................................................................
    Access 2010. Mande bd que dê para testar (indique a versão). Não peça para fazer o que já tem feito. Dê todos os detalhes.
    Não coloquem entraves como senhas, esconder controlos, etc. Disponibilizem o mais limpo possível
    Só respondo a mensagens privadas, se forem de assunto privado; às outras não respondo.
    Quem trabalha e mata a fome não come o pão de ninguém; mas quem não trabalha e come, come sempre o pão de alguém. António Aleixo
    avatar
    NADIRONUNES
    Avançado
    Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 429
    Registrado : 30/08/2010

    [Resolvido]Bloquear Botao de Comando Empty Re: [Resolvido]Bloquear Botao de Comando

    Mensagem  NADIRONUNES em 27/10/2018, 14:06

    funcionou

    obrigado Alexandre Neves vc e o cara


      Data/hora atual: 26/4/2019, 07:20