MaximoAccess

Caro Usuário, não tire as suas duvidas nas Salas de Repositório, abra sempre um novo tópico relacionado, nas salas destinadas para o efeito, como Sala de Tabelas, Consultas, Formulários, Relatórios, Macros, Módulos e VBA.

Obrigado

Administração do MaximoAccess

Dicas Ms Access, Exemplos Ms Access, Codigos VBA Ms Access, SQL Ms Access

    Cancelar a inclusão de um registro no subformulário (*)

    Compartilhe

    MZapia
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Anónimo
    Mensagens : 10
    Registrado : 10/10/2015

    Cancelar a inclusão de um registro no subformulário (*)

    Mensagem  MZapia em Ter 13 Out 2015, 15:41

    Bom dia,

    Estou com uma dúvida:

    Criei um form com subform, porém caso não queira salvá-lo, gostaria de cancelar o que foi feito anteriormente

    Segue o código abaixo:

    Private Sub cmdSalvar_Click()
    sql = "Select * from tbCotacaoDetalhe Where Cotacao=" & Me.ID_Cotacao

    Set db = CurrentDb
    Set rs = db.OpenRecordset(sql, dbOpenDynaset)

    If rs.EOF = True Then
       MsgBox "Não há itens na cotação! Verifique!", vbInformation, "RCM"
       cmdSalvar.SetFocus
       Exit Sub
    End If

    If MsgBox("Salvar cotação?", vbYesNo + vbQuestion, "RCM") = vbYes Then
    'Status
    Status = "Ag. Envio"
    Data = Data


    'Habilita e desabilita botões
       cmdEnviar.SetFocus
       cmdNovo.Enabled = False
       cmdEnviar.Enabled = True
       cmdCancelar.Enabled = True
       cmdExcluir.Enabled = False
       cmdFechar.Enabled = True
       cmdEditar.Visible = True
       cmdEditar.Enabled = True
       cmdSalvar.Visible = False
       cmdRevisar.Enabled = False
       cmdCancelarEdicao.Enabled = False

       'Bloqueia registros
       TravaCampos

       Me.Requery 'Atualiza formulário
       'DoCmd.GoToRecord , , acLast 'Vai para o último registro
       Forms![Lista de Cotação].Requery
       
       'DoCmd.Close acForm, "Cotação"

    Else
      Forms![DetalheCotacao].Undo - Erro 2450 (**) Subformulário - NÃO FUNCIONA
       Me.Undo 'Cancela as alterações do formulário (*) formulário principal - FUNCIONA

    End If
    End Sub



    PS: Li o tópico (http://www.maximoaccess.com/t8396-resolvidocancelar-inclusao-em-subformulario-com-campo-obrigatorio), e aplicando as sugestões, o formulário principal funciona, o que não está funcionando e está dando erro é o subformulário.

    Att.
    Marcelo Zapia

    Noobezinho
    Moderador
    Moderador

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 2516
    Registrado : 29/06/2012

    Re: Cancelar a inclusão de um registro no subformulário (*)

    Mensagem  Noobezinho em Qua 14 Out 2015, 14:21

    Marcelo

    Experimente utilizar o me.Undo somente no form principal, se fez o relacionamento
    entre as tabelas desses dois formulário(principal e sub), de verá desfazer os dois
    simultaneamente.
    Isso vale (o uso de .Undo), para o registro que está sendo adicionado no momento,
    ou seja, foi preenchido o formulário, mas desistiu da ideia, então usa-se o undo.
    Para apagar um registro já gravado na tabela, deverá utilizar de código para deletar
    o registro.

    [ ]'s


    .................................................................................
    Noobezinho

    * A solução funcionou?  [Você precisa estar registrado e conectado para ver esta imagem.] 
    Agradeça e feche o tópico clicando no botão Resolvido
    Se não sabe como, veja [Você precisa estar registrado e conectado para ver este link.].

    Como anexar imagem no teu post do fórum : [Você precisa estar registrado e conectado para ver este link.]

    * Criar arquivos.zip com o Winrar - veja [Você precisa estar registrado e conectado para ver este link.].

    Atualmente estou verificando se quem está pedindo ajuda, ajudamos e não retornou.
    Se a pessoa em questão não deu retorno, não tentarei ajudar novamente .

      Data/hora atual: Sab 10 Dez 2016, 06:52