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]duvida com vba

    Compartilhe

    Carlao2
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 100
    Registrado : 19/10/2016

    Re: [Resolvido]duvida com vba

    Mensagem  Carlao2 em Qui 03 Ago 2017, 13:19

    mas eu estou usando o banco que você postou
    avatar
    ronaldojr1
    Avançado
    Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 292
    Registrado : 01/08/2011

    Re: [Resolvido]duvida com vba

    Mensagem  ronaldojr1 em Qui 03 Ago 2017, 14:20

    eita kkk
    bem estranho acabei de fazer algumas locacoes e devoluções e nao deu erro nenhum,
    me manda o banco que vc esta usando e me fala exatamente como o erro foi gerado por favor

    Carlao2
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 100
    Registrado : 19/10/2016

    Re: [Resolvido]duvida com vba

    Mensagem  Carlao2 em Qui 03 Ago 2017, 14:42

    O erro acontece depois de clicar no botão locar veículo no formulário FSolicitacaoVeiculo e dar o sim na caixa de mensagem
    Anexos
    PROJETO_ADV - 01082017_novo.zip
    Você não tem permissão para fazer download dos arquivos anexados.
    (1.6 Mb) Baixado 1 vez(es)

    Carlao2
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 100
    Registrado : 19/10/2016

    Re: [Resolvido]duvida com vba

    Mensagem  Carlao2 em Qui 03 Ago 2017, 15:01

    Ronaldojr

    Acho que descobri o erro

    É que eu estava clicando no botão antes de preencher o formulário. Rsrsrsrs

    Carlao2
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 100
    Registrado : 19/10/2016

    Re: [Resolvido]duvida com vba

    Mensagem  Carlao2 em Qui 03 Ago 2017, 15:32

    Acho que há algo errado mesmo, ele não preenche os dados de retorno na tabela uso de veiculos
    avatar
    ronaldojr1
    Avançado
    Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 292
    Registrado : 01/08/2011

    Re: [Resolvido]duvida com vba

    Mensagem  ronaldojr1 em Qui 03 Ago 2017, 15:45

    eu fiz um bloqueio para que o registro so salve quando clicar no botao para devolver o veiculo, ou seja, quando de fato o veiculo foi devolvido.

    Carlao2
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 100
    Registrado : 19/10/2016

    Re: [Resolvido]duvida com vba

    Mensagem  Carlao2 em Qui 03 Ago 2017, 15:54

    Desculpe não entendi.

    Pois quando abro o formulario de devolucao, preencho e clico no botão ele pergunta se quero dar baixa no veiculo, coloco que sim e ele informa que o veiculo foi baixado com sucesso.

    Talvez eu esteja fazendo um procedimento de uso incorreto
    avatar
    ronaldojr1
    Avançado
    Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 292
    Registrado : 01/08/2011

    Re: [Resolvido]duvida com vba

    Mensagem  ronaldojr1 em Qui 03 Ago 2017, 16:19

    nao entendi muito bem sua mensagem, mas vi que vc marcou como resolvido.
    funcionou ai?

    acho q eu devia ter falado dos corportamentos ne. rsrsrs

    segue fluxo e regras, mas ta bem resumidao

    1 - cliente preenche solicitacao de veiculos disponiveis para locação
    2 - cliente devolve veiculo
    3 - apos devolvido a tabela historico sera aberta com os dados do veiculo baixado e o form responsavel pelas devolucoes sera fechado.


    regras solicitacao
    1 - o form para solicitacao de veiculos so sera aberto caso exista algum veiculo para locação, será exibido uma mensagem de erro caso isso ocorra
    2 - o campo para escolher placa so sera liberado apos algum outro campo for preenchido
    3 - so podera ser locado veiculos disponiveis
    4 - apos um veiculo ser locado o registro ira ser movido para um em branco e o veiculo que acabou de ser baixado ira sair do combo

    regras devolução
    1 - so podera ser devolvido os veiculos que foram locados pelo proprio usuario caso ele for usuario, mesmo sendo adm ele so podera baixar o proprio veiculo locado
    2 - apos dar baixa o registro ficara bloqueado evitando alterações

    regras historicolocacao
    1 - os administradores podem ver o historico de locação de qualquer veiculo
    2 - usuarios comuns so vera o historico dos proprios veiculos locados

    Carlao2
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 100
    Registrado : 19/10/2016

    Re: [Resolvido]duvida com vba

    Mensagem  Carlao2 em Qui 03 Ago 2017, 16:26

    cliquei mo resolvido por engano.

    Vou fazer mais alguns teste e te digo se está funcionando
    avatar
    ronaldojr1
    Avançado
    Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 292
    Registrado : 01/08/2011

    Re: [Resolvido]duvida com vba

    Mensagem  ronaldojr1 em Qui 03 Ago 2017, 16:31

    ata, blz estamos ai.

    esqueci de mencionar que no form devolução
    caso o usuario preencher todos os campos e nao clicar no botao "devolver veículo" e fechar o form ou mudar de registro sera emitido um alerta informando
    que os dados digitados serão perdidos. caso o user confirmar o form sera fechado caso contrario o form ira focar para o campo Data Retorno e o user
    pode continuar a digitação

    Carlao2
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 100
    Registrado : 19/10/2016

    Re: [Resolvido]duvida com vba

    Mensagem  Carlao2 em Qui 03 Ago 2017, 16:56

    Mestre

    Realmente há algo errado.

    Preencho a solicitação do veículo
    Preencho a devolução do veiculo
    Clico no botão devolver , ele dá a mensagem de confirmação da baixa do veiculo, clico em sim, ele informa que o veículo foi baixado com sucesso, fecha o formulario e abre o de histórico, mas já no de histórico ele mostra somente os dados de solicitação os de devolução estão todos em branco.
    Abro a tabela de uso de veiculo e lá também os dados de devolução estão em branco.
    Abro a tabela veículo e o flag de locado está desmarcado

    Carlao2
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 100
    Registrado : 19/10/2016

    Re: [Resolvido]duvida com vba

    Mensagem  Carlao2 em Qui 03 Ago 2017, 17:38

    Mestre, desculpe minha pouca experiencia, mas o erro não estaria aqui?
    Ele não teria que fazer um UPDATE na tabela "tblUsoVeiculo" ?

    Private Sub desalocarVeiculo()
    If flagVeiculoBaixado = 0 Then
    If Not IsNull(Me.DataRetorno) Then
    If MsgBox("Depois de dar baixa no veículo não será mais possível alterar os dados de retorno!!!" & Chr(13) & "Deseja dar baixa de retorno no veículo com placa " & Me.cbFiltro.Column(1) & "?", vbYesNo) = vbYes Then
    DoCmd.RunSQL "UPDATE Veiculos Set Locado = 0 WHERE cdVeiculo = " & Me.cdVeiculo
    MsgBox "Veículo Baixado com Sucesso!!!", vbInformation, "Sucesso!!!"
    flagAtualizarRegistro = 1
    flagVeiculoBaixado = 1
    Me.Requery
    End If
    Else
    MsgBox "Selecione uma data de retorno para a devolução do veículo", vbCritical, "Erro ao Devolver Veículo!!!"
    DoCmd.GoToControl "DataRetorno"
    End If
    Else
    MsgBox "O veículo ja foi baixado"
    End If
    End Sub
    avatar
    ronaldojr1
    Avançado
    Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 292
    Registrado : 01/08/2011

    Re: [Resolvido]duvida com vba

    Mensagem  ronaldojr1 em Qui 03 Ago 2017, 18:26

    Ele não teria que fazer um UPDATE na tabela "tblUsoVeiculo" ?
    então caro amigo na vdd não pq o que queremos e locar um veiculo, logo ele e um valor que pertence ao conjunto "Veiculo", se colocarmos o campo "locado" na tabela
    "tblUsoVeiculo" dariamos a entender que estamos locando a solicitação de uso do veiculo e não o veiculo em si. deu pra entender mais ou menos?
    como eu dei a dica são regras de relacionento.
    agora falando no portugues. A consulta esta certa pq o campo(locado) que estamos atualizando esta na tabela Veiculos.
    mas ainda da erro na linha do update?

    se sim faça essa alteração:

    na onde esta:
    DoCmd.RunSQL "UPDATE Veiculos Set Locado = 0 WHERE cdVeiculo = " & Me.cdVeiculo

    escreva assim:

    dim strSQL as String
    strSQL = "UPDATE Veiculos Set Locado = 0 WHERE cdVeiculo = " & Me.cdVeiculo
    DoCmd.RunSQL strSQL 'vai gerar o erro aqui

    faça esse teste por favor:
    1- faça o procedimento que vc esta tentando fazer
    2- quando der o erro na linha q eu comentei "vai gerar o erro aqui" clique com o botão direito do mouse em cima da variavel strSQL
    3- nas opções selecione "Adicionar Inspeção de Variáveis..."
    4- na caixa que aparecer apenas de OK
    5- la em baixo da sua tela do vba vai aparecer uma a janela Inspeção de variáveis
    6- copie todo o conteudo da coluna valor
    7- abra uma consulta no modo design e depois mude para modo SQL
    8- cole o conteudo copiado no passo 6
    9- execute a consulta e veja qual foi o erro

    poste o resultado mais o seu bd, ou apenas poste o bd e me fala em qual momento esta dando o erro
    q eu faço esse procedimento.

    o proposito desse teste e saber se o access esta montando a consulta corretamente.
    ai com isso iriamos saber se esta dando os sequintes erros:
    1 - nao achou a tabela "veiculos"
    2 - nao achou o campo "locado"
    3 - nao achou o campo "cdVeiculo"
    4 - cdVeiculo esta nulo

    segue imagem da inspeção de variaveis
    Anexos
    Sem título2.png
    Você não tem permissão para fazer download dos arquivos anexados.
    (67 Kb) Baixado 0 vez(es)

    Carlao2
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 100
    Registrado : 19/10/2016

    Re: [Resolvido]duvida com vba

    Mensagem  Carlao2 em Qui 03 Ago 2017, 19:03

    Mestre.
    Troquei a linha conforme sua solicitação, mas não deu erro nenhum.
    Talvez eu não esteja conseguindo ser claro, mas vamos lá

    1 - Abro o FSolicitaçãoVeiculo
    2 - Preencho os dados e solicito o veículo
    3 - Na tabela Veiculo o flag de locado é marcado
    4 - Na tabela UsoVeiculo o veiculo está lá normalmente

    Agora vou devolver o veículo

    1 - Abro o formulário FDevoluçãoVeículo
    2 - Clico na placa e o veículo que loquei está lá
    3 - Abre os dados de locação
    4 - Preencho os dados de devolução
    5 - clico no botão DevolverVeiculo
    6 - Ele pergunta se quero realmente baixar o veiculo
    7 - Clico em sim e ele informa que o veiculo foi baixado com sucesso
    8 - O Formulario FDevoluçãoVeiculo é fechado e abre o FHistoricoLocaçãoVeiculo - "Aqui é que está o problema"
    9 - Os dados de locação estão preenchidos mas os dados da devolução, ou seja Data de retorno hodometro final, combustivel final, obs, estão em branco

    Vou checar

    Abro a TblUsoVeiculo e lá também só está preenchido os dados da locação, os da devolução está em branco

    Abro a TblVeiculo e o flag de locação foi desmarcado, indicando que o veículo foi devolvido

    Ou seja, ele só não está levando os dados de devolução para a tblUsoVeiculo
    avatar
    ronaldojr1
    Avançado
    Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 292
    Registrado : 01/08/2011

    Re: [Resolvido]duvida com vba

    Mensagem  ronaldojr1 em Qui 03 Ago 2017, 20:49

    agora entendi, por isso falei para falar exatamente quando o erro/comportamento inesperado é ocasionado. rsrsrs
    segue o banco corrigido

    todas linhas que mudei esta comentada iniciando com 'add
    alterei os formularios FHistoricoLocacao e FDevolucaoVeiculo
    Anexos
    PROJETO_ADV - 03082017.zip
    Você não tem permissão para fazer download dos arquivos anexados.
    (1.3 Mb) Baixado 1 vez(es)

    Carlao2
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 100
    Registrado : 19/10/2016

    Re: [Resolvido]duvida com vba

    Mensagem  Carlao2 em Qui 03 Ago 2017, 20:57

    Beleza Ronaldojr

    Vou fazer os testes e te retorno


    Grato
    avatar
    ronaldojr1
    Avançado
    Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 292
    Registrado : 01/08/2011

    Re: [Resolvido]duvida com vba

    Mensagem  ronaldojr1 em Seg 07 Ago 2017, 13:36

    e ai amigo, conseguiu fazer os testes?

    Carlao2
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 100
    Registrado : 19/10/2016

    Re: [Resolvido]duvida com vba

    Mensagem  Carlao2 em Ter 08 Ago 2017, 12:22

    Bom dia Ronaldojr.

    Perdão pela demora, mas estava fora, em cliente.

    Sim já fiz os testes, ficou show de bola.
    Agora o gestor inventou mais uma que não tenho nem ideia de como farei.
    Mas estou até sem jeito de perguntar para você. Acho que estou tomando demais seu tempo.
    avatar
    ronaldojr1
    Avançado
    Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 292
    Registrado : 01/08/2011

    Re: [Resolvido]duvida com vba

    Mensagem  ronaldojr1 em Ter 08 Ago 2017, 13:24

    q isso pega nada, o forum e um lugar para ajudar e pedir ajuda, eu aprendo bastante
    com as duvidas das pessoas e as pessoas acabam aprendendo tb.
    Mas enfim, abre outro topico q agente tenta resolver pq esse ja esta resolvido, certo?


    Carlao2
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 100
    Registrado : 19/10/2016

    Re: [Resolvido]duvida com vba

    Mensagem  Carlao2 em Ter 08 Ago 2017, 14:20

    ok valeu

    Muito obrigado

      Data/hora atual: Sab 23 Set 2017, 06:45