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


3 participantes

    [Resolvido]Impedir que registros sejam editados após serem salvos

    avatar
    helivandomusico
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 20
    Registrado : 14/04/2012

    [Resolvido]Impedir que registros sejam editados após serem salvos Empty [Resolvido]Impedir que registros sejam editados após serem salvos

    Mensagem  helivandomusico Dom 15 Abr 2012, 00:48

    olá, boa noite!
    gostaria de impedir a Edição involuntária de registros salvos em tabelas de meu banco de dados no access. a Edição (quando necessária) de registros salvos eu queria que fosse mediante senha.
    além disso, que fosse possível apenas Adição de registro sem uso prévio de senha.
    no buscar vi alguns tópicos relacionados, mas não entendi como executar. parecia linguagem de programação. por isso abrir novo tópico.
    peço ajuda. e desde já, minha gratidão: obrigado
    avatar
    Convidad
    Convidado


    [Resolvido]Impedir que registros sejam editados após serem salvos Empty Re: [Resolvido]Impedir que registros sejam editados após serem salvos

    Mensagem  Convidad Dom 15 Abr 2012, 08:57


    Olá!

    Há várias maneiras de implementar isto.

    Uma delas seria incluir um controle sim/não na tabela.

    O status desse campo permitiria a edição ou não dos registros.

    Ao clicar neste campo no form, uma InputBox solicita a senha.
    Se correta, atribui True ou False à propriedade AllowEdits do form.

    No evento No-atual (Current) do form, um código atualiza AllowEdits conforme o valor da caixa sim/não.

    Ou, mais simples, também pode usar o evento Em-sujo (Dirty) para controlar edições, também considerando o status da caixa-de-seleção.

    Se tiver dificuldade em implementar, estamos aí.
    avatar
    helivandomusico
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 20
    Registrado : 14/04/2012

    [Resolvido]Impedir que registros sejam editados após serem salvos Empty Re: [Resolvido]Impedir que registros sejam editados após serem salvos

    Mensagem  helivandomusico Dom 15 Abr 2012, 16:15

    olá Norberto Rost
    desde já obrigado pela disposição em ajudar

    desculpe, mas nao sei por onde começar a implementar a sua dica: se no modo desing,ou folha de dados; se no menu Início, ou criar, ou ferramentas de banco de dados...
    também pergunto: form é a mesma coisa que formulário?
    e evento o que é?
    também nao entendi o controle sim/nao

    ah, meu access é do office 2007
    por favor, me explique por onde começar.
    obrigado
    avatar
    helivandomusico
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 20
    Registrado : 14/04/2012

    [Resolvido]Impedir que registros sejam editados após serem salvos Empty Re: [Resolvido]Impedir que registros sejam editados após serem salvos

    Mensagem  helivandomusico Dom 15 Abr 2012, 17:48

    eis o esboço do banco de dados que desejo criar
    Anexos
    [Resolvido]Impedir que registros sejam editados após serem salvos Attachmentdeclaraçao rural.zip
    Você não tem permissão para fazer download dos arquivos anexados.
    (30 Kb) Baixado 152 vez(es)
    avatar
    Convidad
    Convidado


    [Resolvido]Impedir que registros sejam editados após serem salvos Empty Re: [Resolvido]Impedir que registros sejam editados após serem salvos

    Mensagem  Convidad Dom 15 Abr 2012, 19:07


    Ok, Helivando. Vamos lá...

    Exiba a tabela no modo design, e acrescente um campo digitando o seu nome (poderia ser ControleEdit) numa nova linha na coluna Nome-do-campo.
    Na coluna Tipo-de-dados escolha Sim/Não , que é um tipo de controle que nos formulários aparece como uma caixa-de-seleção.

    É preciso que tenha um formulário (form) para gerenciar a entrada e saída de dados da tabela.
    Você já criou este formulário?
    avatar
    helivandomusico
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 20
    Registrado : 14/04/2012

    [Resolvido]Impedir que registros sejam editados após serem salvos Empty Re: [Resolvido]Impedir que registros sejam editados após serem salvos

    Mensagem  helivandomusico Dom 15 Abr 2012, 19:30

    Pronto! Norberto.
    criei um campo denominado ControlEdit e selecionei sim/nao, como tipo de dados.
    ah, criei também o respectivo formulário.

    enviei-o em anexo para que você dê uma olhadinha e possa conferir se o fiz corretamente.

    obrigado por continuar a me orientar
    Anexos
    [Resolvido]Impedir que registros sejam editados após serem salvos Attachmentdeclaraçao rural.zip
    Você não tem permissão para fazer download dos arquivos anexados.
    (46 Kb) Baixado 124 vez(es)
    avatar
    Convidad
    Convidado


    [Resolvido]Impedir que registros sejam editados após serem salvos Empty Re: [Resolvido]Impedir que registros sejam editados após serem salvos

    Mensagem  Convidad Dom 15 Abr 2012, 19:46


    Amigo, eu só uso o A2003.
    Daí pra ver seu arquivo, só se você converter uma cópia para a minha versão.
    avatar
    helivandomusico
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 20
    Registrado : 14/04/2012

    [Resolvido]Impedir que registros sejam editados após serem salvos Empty Re: [Resolvido]Impedir que registros sejam editados após serem salvos

    Mensagem  helivandomusico Dom 15 Abr 2012, 23:20

    converti-o para formato 2003

    Anexos
    [Resolvido]Impedir que registros sejam editados após serem salvos Attachmentdeclaraçao rural 2003.zip
    Você não tem permissão para fazer download dos arquivos anexados.
    (14 Kb) Baixado 35 vez(es)
    avatar
    Convidad
    Convidado


    [Resolvido]Impedir que registros sejam editados após serem salvos Empty Re: [Resolvido]Impedir que registros sejam editados após serem salvos

    Mensagem  Convidad Dom 15 Abr 2012, 23:27


    Ok, baixei.
    Vejo assim que puder, e retorno.
    avatar
    Convidad
    Convidado


    [Resolvido]Impedir que registros sejam editados após serem salvos Empty Re: [Resolvido]Impedir que registros sejam editados após serem salvos

    Mensagem  Convidad Seg 16 Abr 2012, 00:28


    Dicas:

    Não deixe espaços em nome de tabelas.

    Tenha na tabela um campo chave-primária, se possível do tipo AutoNum. Esse campo terá então um índice exclusivo, pelo qual seu registro poderá se identificado.

    Fiz essas correções.
    Como não havia um formulário criado - só uma consulta - criei um bem básico, e inseri os códigos para controle de edição.

    O tal campo sim/nao, ao ser clicado, pede a senha. (A senha é 123). Se digitar a senha correta, deixa marcar (para impedir edições no registro) ou desmarcar (para permitir edições). Se a senha não for correta, não permite marcar/desmarcar.

    Os registros com a caixa marcada não podem ser editados.

    Abra o form em design e exiba o módulo vba para ver os códigos.

    avatar
    helivandomusico
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 20
    Registrado : 14/04/2012

    [Resolvido]Impedir que registros sejam editados após serem salvos Empty Re: [Resolvido]Impedir que registros sejam editados após serem salvos

    Mensagem  helivandomusico Ter 17 Abr 2012, 22:52

    Norberto, gostei! obrigado!

    agora, não sei o que houve, pois os recursos pedir senha e impedir edição, quando a caixa marcada, não estão mais funcionando. testei. no início deu certo. depois de abrir e fechar várias vezes e testar, nao fucionou mais.

    e outra. a caixa de marcar/desmarcar nao permite ser desmarcar (apenas marcar), mesmo com a senha correta. é possível fazer permitir tanto marcar como desmarcar,mediante senha?

    estou gostando! é como eu deseja.

    reenvio em anexo o arquivo enviado e alterado por você
    Anexos
    [Resolvido]Impedir que registros sejam editados após serem salvos Attachmentdeclaracao_rural_2003_b.zip
    Você não tem permissão para fazer download dos arquivos anexados.
    (23 Kb) Baixado 92 vez(es)
    avatar
    helivandomusico
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 20
    Registrado : 14/04/2012

    [Resolvido]Impedir que registros sejam editados após serem salvos Empty Re: [Resolvido]Impedir que registros sejam editados após serem salvos

    Mensagem  helivandomusico Ter 17 Abr 2012, 22:55

    como disse, gostei.
    desejo melhora-lo e aprender a fazer isso. é muito legal. rsrsrs
    obrigado!
    dê uma olhadinha, por favor, e veja o que ocorreu.
    avatar
    Convidad
    Convidado


    [Resolvido]Impedir que registros sejam editados após serem salvos Empty Re: [Resolvido]Impedir que registros sejam editados após serem salvos

    Mensagem  Convidad Qua 18 Abr 2012, 10:26


    É normal que impedir a edição do registro trave também a caixa-de-seleção.

    Quando bloqueamos um registro, normalmente é pra valer, ou seja, dificilmente voltaremos a ter necessidade de editá-lo.

    E neste caso, usamos um segundo form (de acesso restrito) que permite habilitar novamente a edição do registro.

    Criei o Formulário1 pra demonstrar.
    avatar
    helivandomusico
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 20
    Registrado : 14/04/2012

    [Resolvido]Impedir que registros sejam editados após serem salvos Empty Re: [Resolvido]Impedir que registros sejam editados após serem salvos

    Mensagem  helivandomusico Qua 18 Abr 2012, 18:32

    Norberto, o código para controlar a edição nao está funcionando. nao pede senha e permite edição mesmo com a caixa marcada.

    não sei o que aconteceu.

    também nao encontrei o formulário 1 que vc criou.

    ah, depois de tudo, peço que me ensine passo-a-passo como fez o código. pois esse banco de dados que lhe enviei é apenas um esboço.

    sou leigo em programaçao, daí minha dificuldade.

    obrigado por tudo.
    avatar
    Convidad
    Convidado


    [Resolvido]Impedir que registros sejam editados após serem salvos Empty Re: [Resolvido]Impedir que registros sejam editados após serem salvos

    Mensagem  Convidad Qua 18 Abr 2012, 18:41


    Aqui funciona.
    No form fListaBenef, pois o outro só foi criado para controle de bloqueio.

    O código é muito simples. Veja no módulo do form.
    avatar
    Naldo
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 384
    Registrado : 16/02/2011

    [Resolvido]Impedir que registros sejam editados após serem salvos Empty Re: [Resolvido]Impedir que registros sejam editados após serem salvos

    Mensagem  Naldo Qui 19 Abr 2012, 17:56

    Saudações Norberto.
    Me de uma luz de como aplicar em conjunto em um sobForm.
    avatar
    Convidad
    Convidado


    [Resolvido]Impedir que registros sejam editados após serem salvos Empty Re: [Resolvido]Impedir que registros sejam editados após serem salvos

    Mensagem  Convidad Qui 19 Abr 2012, 18:01


    Olá!

    Sugiro que crie o form e o subform com alguns registros, e poste aqui com os detalhes sobre como o bloqueio deve funcionar.

    Aí a gente faz o código.
    avatar
    Naldo
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 384
    Registrado : 16/02/2011

    [Resolvido]Impedir que registros sejam editados após serem salvos Empty Re: [Resolvido]Impedir que registros sejam editados após serem salvos

    Mensagem  Naldo Qui 19 Abr 2012, 22:06

    Ai esta o banco, sou grato pela sua atenção.
    Anexos
    [Resolvido]Impedir que registros sejam editados após serem salvos AttachmentCaixa.zip
    banco caixa
    Você não tem permissão para fazer download dos arquivos anexados.
    (721 Kb) Baixado 103 vez(es)
    avatar
    Convidad
    Convidado


    [Resolvido]Impedir que registros sejam editados após serem salvos Empty Re: [Resolvido]Impedir que registros sejam editados após serem salvos

    Mensagem  Convidad Qui 19 Abr 2012, 22:20


    Tinha pensado em você só criar um form e um subform (baseado no seu aplicativo, pra ter os nomes verdadeiros dos objetos) bem básico e com alguns registros para teste.

    Com o aplicativo todo é mais difícil trabalhar, pois tem muitas imagens sem origem aqui, e outros detalhes.

    Pode ser?
    avatar
    Naldo
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 384
    Registrado : 16/02/2011

    [Resolvido]Impedir que registros sejam editados após serem salvos Empty Re: [Resolvido]Impedir que registros sejam editados após serem salvos

    Mensagem  Naldo Qui 19 Abr 2012, 22:47

    Dei uma enxugada no banco, veja se esta melhor agora.

    Sou grato pela sua atenção.
    Anexos
    [Resolvido]Impedir que registros sejam editados após serem salvos AttachmentExemploNovoCaixa.zip
    Banco Enxuto
    Você não tem permissão para fazer download dos arquivos anexados.
    (176 Kb) Baixado 194 vez(es)
    avatar
    Naldo
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 384
    Registrado : 16/02/2011

    [Resolvido]Impedir que registros sejam editados após serem salvos Empty Re: [Resolvido]Impedir que registros sejam editados após serem salvos

    Mensagem  Naldo Qui 19 Abr 2012, 22:51

    Seria um bloqueio no SubForm ao clicar no botão Fechar Vendas, perceba que ao clicar no botão o campo SaidaFechada ele é marcado com sim.
    avatar
    Convidad
    Convidado


    [Resolvido]Impedir que registros sejam editados após serem salvos Empty Re: [Resolvido]Impedir que registros sejam editados após serem salvos

    Mensagem  Convidad Qui 19 Abr 2012, 23:29


    Basicamente, seria isto:

    No formulário principal:


    'aqui impede a edição se a caixa CampoX estiver marcada
    Private Sub Form_Dirty(Cancel As Integer)
    If Me.CampoX = True Then
    Cancel = True
    MsgBox "Registro bloqueado." & vbCrLf & _
    "Não é possível editar as informações do registro." & vbCrLf & _
    "Para permitir alterações desboqueie o registro no formulário Z."
    End If
    End Sub

    'aqui define o texto da legenda e a cor da fonte do rótulo
    'na navegação pelos registros
    Private Sub Form_Current()
    If Me.CampoX = True Then
    Me.RótuloCampoX.Caption = "Bloqueado"
    Me.RótuloCampoX.ForeColor = 255 'vermelho
    ElseIf Me.CampoX = False Then
    Me.RótuloCampoX.Caption = "Desbloqueado"
    Me.RótuloCampoX.ForeColor = 32768 'verde
    Else
    Me.RótuloCampoX.Caption = "Status"
    Me.RótuloCampoX.ForeColor = 8421504 'cinza
    End If
    End Sub

    'aqui pede a senha ao alterar
    Private Sub CampoX_Enter()
    If Not InputBox("Digite a senha", "Senha requerida") = "123" Then
    Me.OutroCampo.SetFocus 'desvia o foco para outro campo
    End If
    End Sub

    'aqui atualiza o rótulo após marcar/desmarcar a caixa CampoX
    Private Sub CampoX_AfterUpdate()
    If Me.CampoX = True Then
    Me.RótuloCampoX.Caption = "Bloqueado"
    Me.RótuloCampoX.ForeColor = 255 'vermelho
    Else
    Me.RótuloCampoX.Caption = "Desbloqueado"
    Me.RótuloCampoX.ForeColor = 32768 'verde
    End If
    End Sub


    No subformulário:


    'aqui impede a edição se a caixa CampoX no form principal estiver marcada
    Private Sub Form_Dirty(Cancel As Integer)
    If Forms!FormPrincipal!CampoX = True Then
    Cancel = True
    MsgBox "Registro bloqueado." & vbCrLf & _
    "Não é possível editar as informações do registro." & vbCrLf & _
    "Para permitir alterações desboqueie o registro no formulário Z."
    End If
    End Sub

    Lembrando que será necessário um formulário separado contendo o Id e o CampoX como no form principal, para permitir o desbloqueio dos registros.
    Este form deve ser de acesso restrito (com senha ou permissão de usuário).
    avatar
    Naldo
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 384
    Registrado : 16/02/2011

    [Resolvido]Impedir que registros sejam editados após serem salvos Empty Re: [Resolvido]Impedir que registros sejam editados após serem salvos

    Mensagem  Naldo Sex 20 Abr 2012, 14:09

    Norberto

    Deu certinho como você descreveu, ficou ótimo.
    Sou muito grato pela ajuda e sua atenção.
    Grande abraço.

    QUE DEUS LHE ILUMINE.
    avatar
    Convidad
    Convidado


    [Resolvido]Impedir que registros sejam editados após serem salvos Empty Re: [Resolvido]Impedir que registros sejam editados após serem salvos

    Mensagem  Convidad Sex 20 Abr 2012, 14:28


    Beleza, bom que conseguiu!

    O Fórum agradece o retorno.

    Abraço!

    cheers
    avatar
    helivandomusico
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 20
    Registrado : 14/04/2012

    [Resolvido]Impedir que registros sejam editados após serem salvos Empty Re: [Resolvido]Impedir que registros sejam editados após serem salvos

    Mensagem  helivandomusico Sáb 21 Abr 2012, 12:13

    Norberto, depois eu voltar pra lhe perguntar mais uma coisa.

    sou grato pela sua ajuda
    avatar
    dico2212
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 3
    Registrado : 22/06/2015

    [Resolvido]Impedir que registros sejam editados após serem salvos Empty bloqueia edição

    Mensagem  dico2212 Sáb 27 Jun 2015, 16:20

    pessoal, boa tarde!
    será que se eu copiar este código rpa dentro do meu BD ele vai funcionar normalmente?
    ou tenho que fazer alguma adequação.
    copiei a primeira alternativa, mas como disse nosso amigo, ele não desbloqueia.
    o meu BD não tem um subform, somente o form principal, mas preciso bloquear as edições depois de salvo e eventualmente fazer algumas alterações.

    por favor, me ajudem!
    desde ja agradeço.

    Conteúdo patrocinado


    [Resolvido]Impedir que registros sejam editados após serem salvos Empty Re: [Resolvido]Impedir que registros sejam editados após serem salvos

    Mensagem  Conteúdo patrocinado


      Data/hora atual: Sex 19 Abr 2024, 11:25