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


2 participantes

    [Resolvido]Abrir registro para edição ou form em novo registro a partir de textbox de pesquisa em outro formulário

    avatar
    mrjoneskod
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 35
    Registrado : 17/09/2013

    [Resolvido]Abrir registro para edição ou form em novo registro a partir de textbox de pesquisa em outro formulário Empty [Resolvido]Abrir registro para edição ou form em novo registro a partir de textbox de pesquisa em outro formulário

    Mensagem  mrjoneskod 11/11/2015, 22:49

    Olá pessoal, estou com uma grande dúvida.

    Eu tenho um formulário Main, e estou tentando fazer um controle de veículos em um estacionamento.

    No form Main tenho 2 textbox o placatxt e o barcodetxt.
    Ao atualizar um ou outro desejo que seja verificado se o registro existe.
    Se sim, que significa que o veículo está no estacionamento e deve sair. Abrese o form movimentoSaída com os dados já presentes no resgitro para registrar a saída.
    Caso contrário, abrese o form movimentoEntrada em um registro novo para dar entrada no veículo.

    o código que estou testando é

    Código:

    Private Sub txtplaca_AfterUpdate()
    Dim PlacaTxt As String
    Dim Registros As Recordset

    PlacaTxt = txtplaca.Text
    If Not IsNull(Me.txtplaca) Then
    strSQL = "SELECT * FROM movimento WHERE (((movimento.[Placa])= " & Me.txtplaca & ")) AND (((movimento.[HoraSaída]) Is Null))"


    Set Registros = CurrentDb.OpenRecordset(strSQL)

    If Registros.RecordCount <> 0 Then
        DoCmd.OpenForm "movimentoSaída", acNormal, "Código = " & Registros("Código")

    Else
        DoCmd.OpenForm "movimentoEntrada", , acNewRec
           
        Form!movimentoEntrada!placa = PlacaTxt
        Form_movimentoEntrada.Refresh
    End If

    End If

    End Sub

    Ou seja ao atualizar o campo ele verifica e faz a ação referente a condição atendida.

    Porém está dando erro no SQL.

    "Erro em tempo de execução (3061)"
    Parâmetros insuficientes. Eram esperados 1

    Não sei o que pode ser. Se eu jogo essa pesquisa em uma consulta ela retorna o valor esperado.

    Alguma luz? Neutral Obrigado!
    Noobezinho
    Noobezinho
    Moderador
    Moderador


    Respeito às regras : Respeito às Regras 100%

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

    [Resolvido]Abrir registro para edição ou form em novo registro a partir de textbox de pesquisa em outro formulário Empty Re: [Resolvido]Abrir registro para edição ou form em novo registro a partir de textbox de pesquisa em outro formulário

    Mensagem  Noobezinho 1/12/2015, 10:54

    Lucas

    Experimente assim:

    Código:

    Private Sub txtplaca_AfterUpdate()
    dim varCode as integer 'Acredito que o Código seja numérico
    If IsNull(Me.txtplaca) Then
       'caso queira coloca uma msgbox aqui
       exit sub                                                  
    endif

    If DCount("*", "movimento", "[Placa] = '"  & Me.txtplaca & "' AND  [HoraSaída] = is Null") = 0 then
       ' Se não existe, abre o form para adicionar
       DoCmd.OpenForm "movimentoEntrada", , acNewRec
       Form!movimentoEntrada!placa = Me.txtplaca

    Else
      Se existe, captura o código do registro
      varCode = Dlookup("Código","movimento", "[Placa] = ' " & Me.txtplaca & "'")
      ' e abre o form para dar a saída
      DoCmd.OpenForm "movimentoSaída", acNormal, "[Código] = " & varCode

    End If

    End Sub

    Cuidado com nome de controle, se tiver várias tabelas, irá coloca o nome de
    Código para o código dos registros de todas elas?
    Sempre nomeie os controles com nomes que indique a sua função só de olhar
    para eles.
    Assim facilita não só para você, mas para outros que lerão teu código.

    Para saber:
    Como pode ver abaixo, a caixa de texto txtplaca é string, faltou as aspas simples.

    strSQL = "SELECT * FROM movimento WHERE (((movimento.[Placa])= '" & Me.txtplaca & "')) AND (((movimento.[HoraSaída]) Is Null))"
    [ ]'s


    .................................................................................
    A pergunta que não quer calar:
    Por quê quando alguém vem pedir ajuda e conforme o caso pedimos
    para enviar parte do projeto, não temos mais continuidade do tópico?  
    Crê que temos bolas de cristal ou está com medo que "roubemos"  a
    idéia/projeto dele?  Twisted Evil
    Se é tão bom assim...


    Ajude a ser ajudado:
    Seja objetivo na dúvida, dê os detalhes do que precisa, sem rodeios.
    Quando anexar teu projeto, diga onde está o problema, ganhamos mais tempo
    sem precisar procurar o mesmo.
    avatar
    mrjoneskod
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 35
    Registrado : 17/09/2013

    [Resolvido]Abrir registro para edição ou form em novo registro a partir de textbox de pesquisa em outro formulário Empty Re: [Resolvido]Abrir registro para edição ou form em novo registro a partir de textbox de pesquisa em outro formulário

    Mensagem  mrjoneskod 10/12/2015, 15:02

    Primeiro obrigado pela ajuda, está dando um erro no seu código, ainda estou pesquisando o motivo.

    Código:
    Erro em tempo de execução '3075':
    Erro de sintaxe (operador faltando) na expressão de consulta '[Placa] = 'HEH3452' AND [HoraSaída] = is Null'.

    Quanto ao nome do campo, esqueci porque estava trabalhando em mais de uma coisa ao mesmo tempo.
    Noobezinho
    Noobezinho
    Moderador
    Moderador


    Respeito às regras : Respeito às Regras 100%

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

    [Resolvido]Abrir registro para edição ou form em novo registro a partir de textbox de pesquisa em outro formulário Empty Re: [Resolvido]Abrir registro para edição ou form em novo registro a partir de textbox de pesquisa em outro formulário

    Mensagem  Noobezinho 10/12/2015, 16:22

    Essa linha:

    Erro de sintaxe (operador faltando) na expressão de consulta '[Placa] = 'HEH3452' AND [HoraSaída] = is Null'.

    Você escreveu, certo?

    No final dela '[Placa] = 'HEH3452' AND [HoraSaída] = is Null'.

    Tire o sinal de igual, ficando assim:
    '[Placa] = 'HEH3452' AND [HoraSaída] is Null'.


    .................................................................................
    A pergunta que não quer calar:
    Por quê quando alguém vem pedir ajuda e conforme o caso pedimos
    para enviar parte do projeto, não temos mais continuidade do tópico?  
    Crê que temos bolas de cristal ou está com medo que "roubemos"  a
    idéia/projeto dele?  Twisted Evil
    Se é tão bom assim...


    Ajude a ser ajudado:
    Seja objetivo na dúvida, dê os detalhes do que precisa, sem rodeios.
    Quando anexar teu projeto, diga onde está o problema, ganhamos mais tempo
    sem precisar procurar o mesmo.
    avatar
    mrjoneskod
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 35
    Registrado : 17/09/2013

    [Resolvido]Abrir registro para edição ou form em novo registro a partir de textbox de pesquisa em outro formulário Empty Re: [Resolvido]Abrir registro para edição ou form em novo registro a partir de textbox de pesquisa em outro formulário

    Mensagem  mrjoneskod 10/12/2015, 16:30

    Olá, escrevi tudo certo sim, ao colocar como sugeriu, apareceu "Uso de NUll inválido"

    Tentei usar
    Código:
    Null(horaSaída)
    , mas ficou meio esquisito.

    Funcionou com 1 registro e não com o outro. A abertura dos forms estão com erro também, não localiza o form no else.
    E não abre em novo registro no If.
    Noobezinho
    Noobezinho
    Moderador
    Moderador


    Respeito às regras : Respeito às Regras 100%

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

    [Resolvido]Abrir registro para edição ou form em novo registro a partir de textbox de pesquisa em outro formulário Empty Re: [Resolvido]Abrir registro para edição ou form em novo registro a partir de textbox de pesquisa em outro formulário

    Mensagem  Noobezinho 10/12/2015, 18:07

    Lucas


    Melhor enviar as tabelas, formulários e consultas afins.

    Utilize o dropbox, mega, MEO cloud ou ge.tt.

    O ge.tt não precisa se cadastrar para usar.

    Se utilizar, coloque senha no arquivo compactado e então

    coloque aqui o link e a senha.



    .................................................................................
    A pergunta que não quer calar:
    Por quê quando alguém vem pedir ajuda e conforme o caso pedimos
    para enviar parte do projeto, não temos mais continuidade do tópico?  
    Crê que temos bolas de cristal ou está com medo que "roubemos"  a
    idéia/projeto dele?  Twisted Evil
    Se é tão bom assim...


    Ajude a ser ajudado:
    Seja objetivo na dúvida, dê os detalhes do que precisa, sem rodeios.
    Quando anexar teu projeto, diga onde está o problema, ganhamos mais tempo
    sem precisar procurar o mesmo.
    avatar
    mrjoneskod
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 35
    Registrado : 17/09/2013

    [Resolvido]Abrir registro para edição ou form em novo registro a partir de textbox de pesquisa em outro formulário Empty Re: [Resolvido]Abrir registro para edição ou form em novo registro a partir de textbox de pesquisa em outro formulário

    Mensagem  mrjoneskod 10/12/2015, 18:46

    Segue o link.
    http://ge.tt/6qGrXRT2/v/0

    Cara muito obrigado por me ajudar. Very Happy
    Noobezinho
    Noobezinho
    Moderador
    Moderador


    Respeito às regras : Respeito às Regras 100%

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

    [Resolvido]Abrir registro para edição ou form em novo registro a partir de textbox de pesquisa em outro formulário Empty Re: [Resolvido]Abrir registro para edição ou form em novo registro a partir de textbox de pesquisa em outro formulário

    Mensagem  Noobezinho 10/12/2015, 20:31

    Lucas


    Nessa parte do código VBA:

    varCode = Dlookup("Código","movimento", "[Placa] = ' " & Me.txtplaca & "'")

    A aspa simples após:  [Placa] = '

    Está separada das aspas duplas, porque deixei para você poder ver,mas ela tem que estar junto com a aspas dupla para não dar erro.

    O que estava pegando mesmo, era justamente a placa.

    Na tabela  está : HEH3450  e na caixa de texto: HEH-3450

    Dai o access não achava mesmo. Wink

    Coloque essa máscara na tabela : ###\-####

    Não esqueça de colocar o traço nas placas que já estão na tabela.

    [ ]'s


    .................................................................................
    A pergunta que não quer calar:
    Por quê quando alguém vem pedir ajuda e conforme o caso pedimos
    para enviar parte do projeto, não temos mais continuidade do tópico?  
    Crê que temos bolas de cristal ou está com medo que "roubemos"  a
    idéia/projeto dele?  Twisted Evil
    Se é tão bom assim...


    Ajude a ser ajudado:
    Seja objetivo na dúvida, dê os detalhes do que precisa, sem rodeios.
    Quando anexar teu projeto, diga onde está o problema, ganhamos mais tempo
    sem precisar procurar o mesmo.
    avatar
    mrjoneskod
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 35
    Registrado : 17/09/2013

    [Resolvido]Abrir registro para edição ou form em novo registro a partir de textbox de pesquisa em outro formulário Empty Re: [Resolvido]Abrir registro para edição ou form em novo registro a partir de textbox de pesquisa em outro formulário

    Mensagem  mrjoneskod 10/12/2015, 20:40

    A tabela já está com a mascara ???\-0000;;_

    porque as 3 primeiras posições tem que ser letras e os demais números.

    Será que é esse o erro mesmo?

    Aqui, por algum motivo as aspas não estão separadas....
    To meio perdido
    Noobezinho
    Noobezinho
    Moderador
    Moderador


    Respeito às regras : Respeito às Regras 100%

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

    [Resolvido]Abrir registro para edição ou form em novo registro a partir de textbox de pesquisa em outro formulário Empty Re: [Resolvido]Abrir registro para edição ou form em novo registro a partir de textbox de pesquisa em outro formulário

    Mensagem  Noobezinho 10/12/2015, 20:47

    Veja ai

    E por favor releia sobre as placas na tabela e no formulário.


    Download


    .................................................................................
    A pergunta que não quer calar:
    Por quê quando alguém vem pedir ajuda e conforme o caso pedimos
    para enviar parte do projeto, não temos mais continuidade do tópico?  
    Crê que temos bolas de cristal ou está com medo que "roubemos"  a
    idéia/projeto dele?  Twisted Evil
    Se é tão bom assim...


    Ajude a ser ajudado:
    Seja objetivo na dúvida, dê os detalhes do que precisa, sem rodeios.
    Quando anexar teu projeto, diga onde está o problema, ganhamos mais tempo
    sem precisar procurar o mesmo.
    avatar
    mrjoneskod
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 35
    Registrado : 17/09/2013

    [Resolvido]Abrir registro para edição ou form em novo registro a partir de textbox de pesquisa em outro formulário Empty Re: [Resolvido]Abrir registro para edição ou form em novo registro a partir de textbox de pesquisa em outro formulário

    Mensagem  mrjoneskod 10/12/2015, 23:33

    Bom, por algum motivo eu baixei esse arquivo e a tabela já estava com a mascara, porém o formulário não. Quanto ao espaço que separava as aspas, não estava lá, porém continua não funcionando. para garantir eu redigitei, mas continua o mesmo erro. Quando o veículo já está lançado ele abre o movimentoEntrada, porém sempre no primeiro registro e não no registro da placa correspondente, apesar de ele alterar o campo placa.
    "Isso acontece quando digito uma placa que não é do primeiro registro"

    Na hipótese de ter que realizar um novo registro, abre-se uma msgbox com erro, uso de "Null" inválido e o depurador me leva exatamente a mesma linha.

    Código:
    varCode = DLookup("Código", "movimento", "[Placa]='" & Me.txtplaca & "'")

    TO quebrando a cabeça, mas não consigo entender, o erro.
    Noobezinho
    Noobezinho
    Moderador
    Moderador


    Respeito às regras : Respeito às Regras 100%

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

    [Resolvido]Abrir registro para edição ou form em novo registro a partir de textbox de pesquisa em outro formulário Empty Re: [Resolvido]Abrir registro para edição ou form em novo registro a partir de textbox de pesquisa em outro formulário

    Mensagem  Noobezinho 10/12/2015, 23:51


    O erro é só uma questão de virgula Razz

    DoCmd.OpenForm "movimentoSaída", , , "[Código] = " & varCode

    Veja que o critério do comando estava após a segunda virgula que é usado para

    o nome do filtro.

    O correto é após a terceira virgula, onde fica a condição "onde".

    Teste ai e veja Wink


    .................................................................................
    A pergunta que não quer calar:
    Por quê quando alguém vem pedir ajuda e conforme o caso pedimos
    para enviar parte do projeto, não temos mais continuidade do tópico?  
    Crê que temos bolas de cristal ou está com medo que "roubemos"  a
    idéia/projeto dele?  Twisted Evil
    Se é tão bom assim...


    Ajude a ser ajudado:
    Seja objetivo na dúvida, dê os detalhes do que precisa, sem rodeios.
    Quando anexar teu projeto, diga onde está o problema, ganhamos mais tempo
    sem precisar procurar o mesmo.
    avatar
    mrjoneskod
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 35
    Registrado : 17/09/2013

    [Resolvido]Abrir registro para edição ou form em novo registro a partir de textbox de pesquisa em outro formulário Empty Re: [Resolvido]Abrir registro para edição ou form em novo registro a partir de textbox de pesquisa em outro formulário

    Mensagem  mrjoneskod 11/12/2015, 10:30

    Funcionou! Era a vírgula, e por algum motivo a variável varCode dava sempre resultado = Null, ai eu troquei o nome da variável e funcionou.
    Imagina que deva ter alguma variável global com esse nome, que era null. ou alguma coisa do tipo..


    Mais uma vez muito obrigado!
    Noobezinho
    Noobezinho
    Moderador
    Moderador


    Respeito às regras : Respeito às Regras 100%

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

    [Resolvido]Abrir registro para edição ou form em novo registro a partir de textbox de pesquisa em outro formulário Empty Re: [Resolvido]Abrir registro para edição ou form em novo registro a partir de textbox de pesquisa em outro formulário

    Mensagem  Noobezinho 11/12/2015, 10:37

    Que bom que deu certo.

    Só falta colocar o resolvido no título do tópico.

    Edite uma mensagem tua e clique no botão resolvido.

    Veja como, na minha assinatura.

    Boa sorte!


    .................................................................................
    A pergunta que não quer calar:
    Por quê quando alguém vem pedir ajuda e conforme o caso pedimos
    para enviar parte do projeto, não temos mais continuidade do tópico?  
    Crê que temos bolas de cristal ou está com medo que "roubemos"  a
    idéia/projeto dele?  Twisted Evil
    Se é tão bom assim...


    Ajude a ser ajudado:
    Seja objetivo na dúvida, dê os detalhes do que precisa, sem rodeios.
    Quando anexar teu projeto, diga onde está o problema, ganhamos mais tempo
    sem precisar procurar o mesmo.
    avatar
    mrjoneskod
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 35
    Registrado : 17/09/2013

    [Resolvido]Abrir registro para edição ou form em novo registro a partir de textbox de pesquisa em outro formulário Empty Re: [Resolvido]Abrir registro para edição ou form em novo registro a partir de textbox de pesquisa em outro formulário

    Mensagem  mrjoneskod 11/12/2015, 12:14

    Resolvido

    Conteúdo patrocinado


    [Resolvido]Abrir registro para edição ou form em novo registro a partir de textbox de pesquisa em outro formulário Empty Re: [Resolvido]Abrir registro para edição ou form em novo registro a partir de textbox de pesquisa em outro formulário

    Mensagem  Conteúdo patrocinado


      Data/hora atual: 29/4/2024, 13:00