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]Formulário de Pesquisa.

    Compartilhe

    prietomarco
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 19
    Registrado : 05/10/2017

    [Resolvido]Formulário de Pesquisa.

    Mensagem  prietomarco em 4/2/2018, 22:59

    Boa noite!!!

    Criei um formulário de pesquisa na tabela cliente.
    Neste formulário de pesquisa dou um duplo click no registro filtrado e abre o formulário de inclusão de clientes com o registro completo para edição.
    Tenho
    "Private Sub cod_cliente_DblClick(Cancel As Integer)

    Dim Criterio As String

    Criterio = "[cod_cliente]=" & Forms![frm_loccliente]![frm_sbloccliente]![cod_cliente]

    DoCmd.OpenForm "frm_cliente", , , Criterio, , acWindowNormal
    DoCmd.SelectObject acForm, "frm_loccliente"
    DoCmd.Close

    End Sub
    "

    Mas, o duplo click do formulário de pesquisa, só funciona corretamente desabilitando o comando de abrir o formulário de inclusão de clientes em novo registro.

    "Private Sub Form_Load()
    'DoCmd.GoToRecord , , acNewRec
    End Sub"

    Gostaria de saber como posso fazer para usar os dois comandos juntos.
    avatar
    tauron
    VIP
    VIP

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1064
    Registrado : 07/12/2011

    Re: [Resolvido]Formulário de Pesquisa.

    Mensagem  tauron em 5/2/2018, 09:35

    Pelo que vi voce utiliza um subformulario. Eu prefiro trabalhar com listbox. Veja meu exemplo.
    Anexos
    formPesquisa.zip
    Você não tem permissão para fazer download dos arquivos anexados.
    (195 Kb) Baixado 37 vez(es)

    prietomarco
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 19
    Registrado : 05/10/2017

    Re: [Resolvido]Formulário de Pesquisa.

    Mensagem  prietomarco em 5/2/2018, 15:37

    Boa tarde Tauron!!!

    Mudei meu formulário de pesquisa. Utilizei um list box, consegui filtrar e buscar o registro.
    Mas, continuo com o mesmo problema:
    Se habilito o comando "DoCmd.GoToRecord , , acNewRec", quando clico no registro filtrado abre o formulário vazio.
    Se desabilito, quando abro um novo registro, o formulário vem com o primeiro registro cadastrado.

    Analisei o exemplo que me enviasse, mas sou bastante leigo em VBA para entender o código.
    Pelo que entendi, os comando estão amarrados um no outro, não é um comando direto em cima do evento.
    Se estou falando bobagem, me perdoa, pois sou leigo em vba.

    Mas, com certeza, é bem mais tranquilo criar o filtro com listbox.
    avatar
    tauron
    VIP
    VIP

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1064
    Registrado : 07/12/2011

    Re: [Resolvido]Formulário de Pesquisa.

    Mensagem  tauron em 5/2/2018, 16:01

    Seria interessante se postasse seu bd para que possamos analisar melhor.

    Vou tentar explicar a logica do meu exemplo:

    existe uma unica tabela e dois formularios: Ao pesquisar atraves da caixa de texto, sendo o contribuinte/cliente encontrado, ele ira aparecer na lista abaixo e ao selecionar ira habilitar o botao editar que abrira o outro formulario ja no registro selecionado e, caso nao exista o registro pesquisado, o botao "cadastrar" sera visualizado e ao clicar neste, o formulario ira abrir para o cadastro de um novo registro.

    Teste ai: sabendo qeu ha dois registros (11111111111, 22222222222) tente pesquisar por exemplo o 33333333333.

    prietomarco
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 19
    Registrado : 05/10/2017

    Re: [Resolvido]Formulário de Pesquisa.

    Mensagem  prietomarco em 5/2/2018, 18:37

    Segue banco de dados,


    No formulário de vendas "frm_vendas", clicando no botão localizar, abre o formulário de pesquisa ""frm_locvenda"".
    Ao retornar do formulário de pesquisa que gera o problema.

    Banco de dados com registros.


    Última edição por prietomarco em 5/2/2018, 20:59, editado 1 vez(es)

    Noobezinho
    Moderador
    Moderador

    Respeito às Regras 100%

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

    Re: [Resolvido]Formulário de Pesquisa.

    Mensagem  Noobezinho em 5/2/2018, 19:11

    Marco

    Coloque 2 ou 3 registros para que possamos verificar o erro.

    Pode apagar o arquivo anterior e colocar o novo no mesmo post.

    [ ]'s
    avatar
    tauron
    VIP
    VIP

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1064
    Registrado : 07/12/2011

    Re: [Resolvido]Formulário de Pesquisa.

    Mensagem  tauron em 5/2/2018, 22:48

    Marco, vejamos o seguinte : no evento "ao carregar" do frm_Cliente, vc determinou que caso o filtro retornasse vazio entao o formulario seria preparado para inclusao de novo registro:

    Então se vc ao pesquisar encontrar algum registro, o sistema vai pirar pois nao vai saber se abre para nova inclusao ou abre no registro selecionado para edicao.

    Veja como vc programou:

    DoCmd.GoToRecord , , acNewRec (aqui toda vez que o formulario for aberto ele estara preparado para novo registro)

    On Error GoTo fim (se ocorrer erro vai para o fim)

    If Me.Filter = "" Then (se o filtro/pesquisa retornar vazio/nenhum resultado, então)

    DoCmd.GoToRecord , , acNewRec (será um novo registro)

    End If

    fim:
    Exit Sub

    se tem um botao para nova inclusao, descarte essa linha sem medo.
    avatar
    tauron
    VIP
    VIP

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1064
    Registrado : 07/12/2011

    Re: [Resolvido]Formulário de Pesquisa.

    Mensagem  tauron em 5/2/2018, 23:20

    Marco, por acaso ja testou com um registro que nao esteja na lista? tipo digite "tauron" e veja o que acontece.

    prietomarco
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 19
    Registrado : 05/10/2017

    Re: [Resolvido]Formulário de Pesquisa.

    Mensagem  prietomarco em 6/2/2018, 12:08

    Bom dia Tauron!!!

    Não consegui ser claro no meu problema:

    Meu objetivo é quando abrir o formulário Vendas "frm_vendas", ele abra em um novo registro, e quando utilizar a consulta e clique sobre o registro abra o registro selecionado:

    Para isso usei:

    DoCmd.GoToRecord , , acNewRec

    Para abrir sempre em um registro novo.

    Mas, usando somente esta instrução, meu formulário de consulta "frm_locvenda" realiza a consulta normal, mas quando clico no registro para abri-lo no formulário "frm_vendas" (ver registro completo), o formulário abre vazio. Para isso usei o comando:

    On Error GoTo fim (se ocorrer erro vai para o fim)

    If Me.Filter = "" Then (se o filtro/pesquisa retornar vazio/nenhum resultado, então)

    DoCmd.GoToRecord , , acNewRec (será um novo registro)

    End If

    fim:
    Exit Sub

    Meu problema é fazer os dois eventos funcionarem juntos.
    O restante esta funcionando a contento.

    Noobezinho
    Moderador
    Moderador

    Respeito às Regras 100%

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

    Re: [Resolvido]Formulário de Pesquisa.

    Mensagem  Noobezinho em 6/2/2018, 13:35

    Marco

    Aqui está teu projeto modificado.

    Veja que criei uma função  Está carregado() para verificar se o formulário "frm_locvenda" está carregado ou não.

    Então, quando abrir o frm_vendas, no evento aoCarregar, verifica, se não tiver carregado, irá para novo registro.

    [ ]'s

    prietomarco
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 19
    Registrado : 05/10/2017

    Re: [Resolvido]Formulário de Pesquisa.

    Mensagem  prietomarco em 6/2/2018, 15:18

    Boa tarde Noobezinho!!!


    Ficou perfeito, muito obrigado pela ajuda.
    Com certeza tenho muito para aprender em access e VBA.

    Muito obrigado mesmo.

    prietomarco
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 19
    Registrado : 05/10/2017

    Re: [Resolvido]Formulário de Pesquisa.

    Mensagem  prietomarco em 6/2/2018, 15:25

    Muito Obrigado Tauron e Noobezinho!!!

    Noobezinho
    Moderador
    Moderador

    Respeito às Regras 100%

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

    Re: [Resolvido]Formulário de Pesquisa.

    Mensagem  Noobezinho em 6/2/2018, 16:19

    Que bom que pude ajudar

    Valeu o retorno!

    Boa sorte!

      Data/hora atual: 17/12/2018, 10:22