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 desvinculado não lê as instruções que estão em Form_Dirty

    mfmaiafilho
    mfmaiafilho
    Avançado
    Avançado

    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 370
    Registrado : 02/08/2018

    Formulário desvinculado não lê as instruções que estão em Form_Dirty Empty Formulário desvinculado não lê as instruções que estão em Form_Dirty

    Mensagem  mfmaiafilho 14/4/2021, 18:36

    Srs. boa tarde!

    estou tentando fazer um formulario desvinculado porém o meu grande problema é que a instrução que eu tenho em Form_Dirty ele não ler pois não tem campos vinculados a nenhuma tabela.

    como faço pra isso acontecer ?
    Alexandre Fim
    Alexandre Fim
    Developer
    Developer

    Respeito às regras : Respeito às Regras 100%

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

    Formulário desvinculado não lê as instruções que estão em Form_Dirty Empty Re: Formulário desvinculado não lê as instruções que estão em Form_Dirty

    Mensagem  Alexandre Fim 14/4/2021, 18:57

    Olá Mizael,

    Qual seria a necessidade de utilizar o evento Dirty do formulário, já que ele é utilizado em formulário vinculados e vc quer criar um form desvinculado?
    Quais as instruções necessárias que vc utilizava no Dirty?

    []'s


    FIM





    .................................................................................
    - 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.
    mfmaiafilho
    mfmaiafilho
    Avançado
    Avançado

    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 370
    Registrado : 02/08/2018

    Formulário desvinculado não lê as instruções que estão em Form_Dirty Empty Re: Formulário desvinculado não lê as instruções que estão em Form_Dirty

    Mensagem  mfmaiafilho 15/4/2021, 01:18

    A inteção é essa:

    Ativar botões de salvar/desfazer

    consegui desfazer ou limpar o formulário tipo Form.Undo

    o que entendo de formulário desacoplado é que da Fonte de Dados não tem uma tabela apontada e nem uma consulta,

    os campos também estão sem fonte de registro

    Alexandre Fim
    Alexandre Fim
    Developer
    Developer

    Respeito às regras : Respeito às Regras 100%

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

    Formulário desvinculado não lê as instruções que estão em Form_Dirty Empty Re: Formulário desvinculado não lê as instruções que estão em Form_Dirty

    Mensagem  Alexandre Fim 15/4/2021, 16:17

    Olá Mizael,

    Alguns anos atrás, eu disponibilizei neste fórum um exemplo de Cadastro de Cliente com os controles desvinculados/desacoplados à tabela.
    Reformulei algumas funções e também fiz os comentários em cada rotina do formulário (quase todas...rss)

    Segue:
    Formulário desvinculado não lê as instruções que estão em Form_Dirty Cadcli14


    Neste cadastro, ele faz as seguintes validações:
    - Validação dos campos preenchidos (não fiz todos...ai fica a critério do usuário em melhorar essa rotina)
    - Validação de CPF/CNPJ
    - Validação de inscrição Estadual
    - Verificação de CPF/CNPJ já cadastrado
    - Validação do preenchimento correto do e-mail
    - Função de geração automática de ID (a tabela não possui campo de Numeração Automática)
    - Preenchimento do Endereço através da API dos Correios, que realiza a busca no ViaCEP.
    - Tela de pesquisa (básica)

    Acredito que este cadastro possa te ajudar no que pretende.

    Espero ter ajudado.

    Boa sorte

    []'s

    FIM
    Anexos
    Formulário desvinculado não lê as instruções que estão em Form_Dirty AttachmentCadCliente.zip
    Você não tem permissão para fazer download dos arquivos anexados.
    (101 Kb) Baixado 16 vez(es)


    .................................................................................
    - 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.

    Marcelo David gosta desta mensagem

    mfmaiafilho
    mfmaiafilho
    Avançado
    Avançado

    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 370
    Registrado : 02/08/2018

    Formulário desvinculado não lê as instruções que estão em Form_Dirty Empty Re: Formulário desvinculado não lê as instruções que estão em Form_Dirty

    Mensagem  mfmaiafilho 5/5/2021, 01:02

    Boa noite amigo,

    perdão por não responder, eu vi seu exemplo muito bom inclusive peguei varias coisas do seu e já adaptei no meu

    mas infelizmente acredito que precise de algo que faça uma comparação com o registro do formulário e o registro da tabela e verificar se teve alteração....
    ou algo do tipo, eu utilizava anteriormente o exemplo abaixo porém com formulario vinculado.


    Exemplo:

    If Form.Dirty = False Then
    DoCmd.Close
    Else
    strmsg = "Você não salvou as alterações realizadas." & vbCrLf & " " & vbCrLf & "Deseja salvar antes de sair?"
    iResponse = MsgBox(strmsg, vbQuestion + vbYesNoCancel, "Sistema")

    If iResponse = vbYes Then
    INSERT INTO TBL_EXEMPLO X,X,X,X,X VALUES X,X,X,X,X
    End If
    mfmaiafilho
    mfmaiafilho
    Avançado
    Avançado

    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 370
    Registrado : 02/08/2018

    Formulário desvinculado não lê as instruções que estão em Form_Dirty Empty Re: Formulário desvinculado não lê as instruções que estão em Form_Dirty

    Mensagem  mfmaiafilho 5/5/2021, 12:27

    up....
    Alexandre Fim
    Alexandre Fim
    Developer
    Developer

    Respeito às regras : Respeito às Regras 100%

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

    Formulário desvinculado não lê as instruções que estão em Form_Dirty Empty Re: Formulário desvinculado não lê as instruções que estão em Form_Dirty

    Mensagem  Alexandre Fim 5/5/2021, 14:07

    Mizael bom dia,

    Referente ao seu comentário:


    mas infelizmente acredito que precise de algo que faça uma comparação com o registro do formulário e o registro da tabela e verificar se teve alteração....
    ou algo do tipo, eu utilizava anteriormente o exemplo abaixo porém com formulario vinculado.


    Quando é carregado os dados na tela, os dados da tabela estão intactos, mesmo que o usuário esteja alterando algum dado do registro no formulário.
    A alteração será efetivada na tabela quando ele clicar no botão gravar.
    É assim que funciona!
    Portanto, não é necessário fazer essa validação.

    No exemplo que te mandei, tem os comandos:
    - Editar: nele possui uma variável que indica se é uma atualização à ser realizada, ou seja, um UPDATE na tabela.
    - Novo: nele possui uma variável que indica se é uma inclusão à ser realizada, ou seja, um INSERT na tabela.

    Se teve alteração ou não do registro , executa a gravação do registro.
    Simples assim.



    []'s

    FIM


    .................................................................................
    - 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.
    mfmaiafilho
    mfmaiafilho
    Avançado
    Avançado

    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 370
    Registrado : 02/08/2018

    Formulário desvinculado não lê as instruções que estão em Form_Dirty Empty Re: Formulário desvinculado não lê as instruções que estão em Form_Dirty

    Mensagem  mfmaiafilho 5/5/2021, 15:10

    Bom dia amigo,
    Até entendo sua colocação, postei o cenário abaixo para melhor entendimento,

    Veja a janela, se eu clicar no botão Fechar ele apenas fecha sem perguntar se eu quero salvar ou não.
    Formulário desvinculado não lê as instruções que estão em Form_Dirty Sem_al10

    Já ao alterar alguma letra ou algo ele libera o Botão Salvar, e Desfazer e se eu clicar no Botão Fechar, ele me faz a pergunta "Deseja Salvar"
    Formulário desvinculado não lê as instruções que estão em Form_Dirty Com_al10
    Alexandre Fim
    Alexandre Fim
    Developer
    Developer

    Respeito às regras : Respeito às Regras 100%

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

    Formulário desvinculado não lê as instruções que estão em Form_Dirty Empty Re: Formulário desvinculado não lê as instruções que estão em Form_Dirty

    Mensagem  Alexandre Fim 5/5/2021, 16:09

    Mas este formulário é com os campos Acoplados à tabela?


    .................................................................................
    - 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.
    mfmaiafilho
    mfmaiafilho
    Avançado
    Avançado

    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 370
    Registrado : 02/08/2018

    Formulário desvinculado não lê as instruções que estão em Form_Dirty Empty Re: Formulário desvinculado não lê as instruções que estão em Form_Dirty

    Mensagem  mfmaiafilho 5/5/2021, 16:17

    Não, esse é apenas um exemplo de um sistema que não é access.

    Eu pensei em algo e não sei como fazer,

    "Ao digitar no form" tipo criar algo em "Ao Pressionar Teclas" dentro do formulario daí ele libera o botão salvar e desfazer, e se caso o usuário pressionar fechar ele pergunta se deseja salvar ou não

    caso ele não digite nada no formulario ele não pergunta na hora de fechar o form, e também não libera os botões de salvar e desfazer,

    só que é "como fazer" aushdashdu
    Alexandre Fim
    Alexandre Fim
    Developer
    Developer

    Respeito às regras : Respeito às Regras 100%

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

    Formulário desvinculado não lê as instruções que estão em Form_Dirty Empty Re: Formulário desvinculado não lê as instruções que estão em Form_Dirty

    Mensagem  Alexandre Fim 5/5/2021, 16:51

    Provavelmente, é VB6


    .................................................................................
    - 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.
    Assis
    Assis
    Maximo VIP
    Maximo VIP

    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 4445
    Registrado : 06/11/2009

    Formulário desvinculado não lê as instruções que estão em Form_Dirty Empty Re: Formulário desvinculado não lê as instruções que estão em Form_Dirty

    Mensagem  Assis 5/5/2021, 17:41

    Boa tarde

    Teste e retorne. De momento só deteta o campo "Nome" como alterado. se gostar tem de fazer como está no campo nome "Ao Alterar"

    - Selecione o cliente a alterar.

    - Altere o nome (de momento só esse campo é detetado).

    - Altere o nome do cliente, e clique em "Sair" ou "Gravar"

    Aguardo
    Anexos
    Formulário desvinculado não lê as instruções que estão em Form_Dirty AttachmentCadCliente_Rev.zip
    Você não tem permissão para fazer download dos arquivos anexados.
    (192 Kb) Baixado 2 vez(es)


    .................................................................................
    *** Só sei que nada sei ***
    mfmaiafilho
    mfmaiafilho
    Avançado
    Avançado

    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 370
    Registrado : 02/08/2018

    Formulário desvinculado não lê as instruções que estão em Form_Dirty Empty Re: Formulário desvinculado não lê as instruções que estão em Form_Dirty

    Mensagem  mfmaiafilho 5/5/2021, 17:59

    eu só não entendi muito bem....

    If Nz(Me!txtnomecli) <> Nz(Me!txtnomecli.Text) Then fncPintaTexto (255)

    poderia me explicar um pouco melhor o que a Função Nz faz ?

    ela busca as informações da tabela ?

    Eu leio esse código Se O campo txtNomecli é diferente do mesmo campo então chama fncpintatexto(255)

    se eu não estou enganado....
    Assis
    Assis
    Maximo VIP
    Maximo VIP

    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 4445
    Registrado : 06/11/2009

    Formulário desvinculado não lê as instruções que estão em Form_Dirty Empty Re: Formulário desvinculado não lê as instruções que estão em Form_Dirty

    Mensagem  Assis 5/5/2021, 18:10

    Quando é diferente pinta de vermelho.
    A partir daí é que deteta que teve alteração.

    Altere outro campo por exemplo endereço e veja se pinta a vermelho ?



    .................................................................................
    *** Só sei que nada sei ***
    Alexandre Fim
    Alexandre Fim
    Developer
    Developer

    Respeito às regras : Respeito às Regras 100%

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

    Formulário desvinculado não lê as instruções que estão em Form_Dirty Empty Re: Formulário desvinculado não lê as instruções que estão em Form_Dirty

    Mensagem  Alexandre Fim 5/5/2021, 19:45

    Mizael,

    Fiz um exemplo que simula a propriedade Dirty do formulário.
    Ao abrir o formulário, no campo código, digite 1 e o sistema ira carregar os dados na tela
    Edite qualquer campo que seja diferente do  "Cod" , e o que for diferente dos dados originais carregado, habilita o botão Gravar.

    Cara?
    É um trabalho desnecessário, pq vc tem que fazer em todos os campos do formulário.
    Ou criar uma função que verifica qual o controle que vc alterou para ele executar a Validação de dados.

    Boa sorte

    []'

    FIM
    Anexos
    Formulário desvinculado não lê as instruções que estão em Form_Dirty AttachmentExemploDirty.zip
    Você não tem permissão para fazer download dos arquivos anexados.
    (36 Kb) Baixado 3 vez(es)


    .................................................................................
    - 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.
    mfmaiafilho
    mfmaiafilho
    Avançado
    Avançado

    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 370
    Registrado : 02/08/2018

    Formulário desvinculado não lê as instruções que estão em Form_Dirty Empty Re: Formulário desvinculado não lê as instruções que estão em Form_Dirty

    Mensagem  mfmaiafilho 5/5/2021, 21:01

    Srs. a ajuda tá sendo mto util de ambos os lados vou postar meu exemplo pra ver se conseguimos fazer algo....

    só pra resumir, eu tenho duas variaveis globais Boolean
    uma gSujarForm e outra gNovoReg
    Eu fiz assim, ao pressionar uma tecla ele liberar os botões btn_salvar, btn_desfazer, e perguntar no btn_fechar...

    Código:
    Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer)

        gSujarForm = True
        
        If gSujarForm = True Then
            Me.btn_novo.Enabled = False
            Me.btn_salvar.Enabled = True
            Me.btn_desfazer.Enabled = True
        End If


    o que eu não consegui foi adaptar o exemplo de vocês no meu banco....
    Anexos
    Formulário desvinculado não lê as instruções que estão em Form_Dirty Attachmentalpha.zip
    Você não tem permissão para fazer download dos arquivos anexados.
    (749 Kb) Baixado 4 vez(es)
    mfmaiafilho
    mfmaiafilho
    Avançado
    Avançado

    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 370
    Registrado : 02/08/2018

    Formulário desvinculado não lê as instruções que estão em Form_Dirty Empty Re: Formulário desvinculado não lê as instruções que estão em Form_Dirty

    Mensagem  mfmaiafilho 5/5/2021, 21:22

    seria bem interessante se usasse essa configuração pra todos os campos do formulário, o grande problema é que se fizer de um por um da muito código...

    o grande problema é que todo campo precisa colocar ao Alterar ....

    Private Sub NOME_DO_CAMPO_Change()
    Call Variavel
    End Sub

    Function Variavel()
       gSujarForm = True
       
       If gSujarForm = True Then
           Me.btn_novo.Enabled = False
           Me.btn_salvar.Enabled = True
           Me.btn_desfazer.Enabled = True
       End If
    End Sub
    End Function

    Conteúdo patrocinado

    Formulário desvinculado não lê as instruções que estão em Form_Dirty Empty Re: Formulário desvinculado não lê as instruções que estão em Form_Dirty

    Mensagem  Conteúdo patrocinado


      Data/hora atual: 17/5/2021, 14:46