locked
Botao novo RRS feed

  • Pergunta

  • Olá

    Dúvida urgente


    Gostaria de saber como eu faço para criar um botão de novo no access, sem adicionar registro mas somente novo, pois depois poderei acrescentar um botao para salvar. Gostaria de um botao novo para que o usuário nao insira um registro sem querer`Pois o botao adicionar registro do access tanto é novo como também é gravar.

    Quero saber também como eu faço  para abrir o formulário já na condição de novo pois quando abro ele apresenta o primeiro registro inserido. Ai só depois que eu clico no botão adicionar registro que ele dá um refresh nos campos.


    Maurício


    sexta-feira, 20 de março de 2009 04:06

Respostas

  • No BeforeUpdate do form.
    Luiz Cláudio Cosenza Vieira da Rocha - http://msmvps.com/blogs/officedev - IT Lab www.itlab.com.br
    • Marcado como Resposta maumauboy sexta-feira, 3 de abril de 2009 14:57
    quarta-feira, 1 de abril de 2009 01:44
    Moderador

Todas as Respostas

  • Olá,

    quando você começa a preencher um novo registro no Access, ele ainda não está salvando na tabela. O registro só é salvo quando você sai dele.

    Assim, o seu botão "Novo" fará a mesma coisa que faz hoje: adicionar uma nova linha. O botão "Salvar" deve fazer o Me.Refresh para salvar o registro. 

    Você precisará tratar as formas disponíveis para o usuário mudar de linha e fechar o formulário, evitando que o registro seja salvo acidentalmente. Muitas vezes é suficiente colocar uma pergunta no BeforeUpdate do formulário.

     
    Luiz Cláudio Cosenza Vieira da Rocha - http://msmvps.com/blogs/officedev - IT Lab www.itlab.com.br
    sábado, 21 de março de 2009 00:52
    Moderador
  • Não entendi, só quero um botão que de um refresh no formulário para inserir novos registros, o problem é que o botão padrão do access chamado (adicionar registro) também grava.


    Maurício
    terça-feira, 24 de março de 2009 17:58
  • Dar um refresh significa salvar um registro, pelo que entendi não é isto que você quer. Pela explicação, você quer inserir novos registros sem salvar os anteriores.

    Por padrão isto não é possível no Access. Ao colocar o foco em um novo registro, o Access salva o anterior. Isto funciona assim no Access e em outros bancos de dados. Não é o botão padrão do Access que tem este comportamento; qualquer outro método que você criar funcionará assim.

    Há duas formas de se atingir este objetivo:

    a) Abrir uma transação para o recordset do seu formulário e fazer o Commit desta transação no botão Salvar.

    b) Usar uma outra tabela (como se fosse temporária) na origem do seu formulário e usar o botão Salvar para jogar os registros na tabela definitiva. 


    Luiz Cláudio Cosenza Vieira da Rocha - http://msmvps.com/blogs/officedev - IT Lab www.itlab.com.br
    sábado, 28 de março de 2009 23:32
    Moderador
  • Olá Luiz,


    Referente a primeira pergunta.
    Como eu posso colocar uma pergunta no before update do formulário para que a pessoa não grave por acidente? Você tem algum exemplo?


    Grato


    Maurício.

    segunda-feira, 30 de março de 2009 13:58
  • If MsgBox("Deseja salvar?", vbQuestion+vbYesNo)=vbNo Then
    
         Cancel = True
    Me.Undo End If

    Luiz Cláudio Cosenza Vieira da Rocha - http://msmvps.com/blogs/officedev - IT Lab www.itlab.com.br
    terça-feira, 31 de março de 2009 01:29
    Moderador
  • Bom Dia Luiz


    Mas em qual evento eu coloco este código?

    No ao sair?

    Maurício
    terça-feira, 31 de março de 2009 13:47
  • No BeforeUpdate do form.
    Luiz Cláudio Cosenza Vieira da Rocha - http://msmvps.com/blogs/officedev - IT Lab www.itlab.com.br
    • Marcado como Resposta maumauboy sexta-feira, 3 de abril de 2009 14:57
    quarta-feira, 1 de abril de 2009 01:44
    Moderador
  • Ok Muito Obrigado.
    sexta-feira, 3 de abril de 2009 14:56