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]Registro do último odômetro se repetindo

    avatar
    AMarcos
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 218
    Registrado : 26/07/2016

    [Resolvido]Registro do último odômetro se repetindo Empty [Resolvido]Registro do último odômetro se repetindo

    Mensagem  AMarcos 5/10/2019, 19:52

    Caros amigos e mestres, eu estou com um probleminha mo meu Formulário de Abastecimento. Nele existe um código onde todas as vezes em vou registrar um novo abastecimento, no campo "Último_Odom" puxa automaticamente a informação do abastecimento anterior. Isso acontece com cada veículo no momento do novo registro:

    Código:
    Private Sub Form_Current()
       If Me.NewRecord Then
           Me.Ultimo_Abast = 0
       Else
           Me.Ultimo_Abast = DLast("Odom_Abast", "Abastecimento", "Viaturas ='" & comb_VtrAbast & "' AND Nr_Reg<" & Me.Nr_Reg)
       End If
    End Sub

    Só que de uns tempos para cá estou me deparando com os registros de último abastecimento se repetindo, sem informar o registro real que seria sempre o último abastecido.  Isso está influenciando e muito no cáculo da autonomia do veículo, pois está sempre subtraindo o valor do odômetro atual com o odômetro repetido.

    [Resolvido]Registro do último odômetro se repetindo Rel_ab12

    Da última vez fui buscando realizando os lançamentos tudo de novo do ponto de onde  começava a se repetir e pude observar que coincidência ou não era a partir do momento onde o usuário cometia erros de lançamentos, como por exemplo num mesmo veículo onde já registrava abastecimento com mais de 20.000 Km, o usuário  lançava outro totalmente diferente que não obedecia a sequência crescente dos odômetros de acordo com o avanço das datas dos abastecimentos.
    Mas agora não dá pra ir fazendo sempre, de um a um, a medida que o BD aumenta de nº de registros...

    Será que os mestres tem alguma solução para esse problema? Será que falta agum tratamento no código para evitar que isso aconteça?

    Abaixo segue o extrato do BD para visualização e correção se necessário.

    Att,


    AMarcos
    Anexos
    [Resolvido]Registro do último odômetro se repetindo AttachmentERROR_Abastecimento.zip
    Você não tem permissão para fazer download dos arquivos anexados.
    (248 Kb) Baixado 10 vez(es)


    Última edição por AMarcos em 10/10/2019, 00:33, editado 1 vez(es)
    avatar
    AMarcos
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 218
    Registrado : 26/07/2016

    [Resolvido]Registro do último odômetro se repetindo Empty Re: [Resolvido]Registro do último odômetro se repetindo

    Mensagem  AMarcos 8/10/2019, 20:16

    Senhores amigos e mestres, o que está acontecendo resumidamente é que o campo "ultimo_odom" que recebe o valor do campo "odom_atual" do último registro de abastecimento do veículo (viatura) está se repetindo a partir de uma determinada data que eu não consigo saber o porquê e nem como corrigir para que isso não aconteça.
    Muito provavelmente tal repetição acontece por ação do usuário. Será que existe algum Tratamento que se evite essa repetição?

    Att,


    AMarcos
    avatar
    AMarcos
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 218
    Registrado : 26/07/2016

    [Resolvido]Registro do último odômetro se repetindo Empty Re: [Resolvido]Registro do último odômetro se repetindo

    Mensagem  AMarcos 10/10/2019, 04:35

    Na foto mostra a repetição acontecendo: ao invés de registrar no campo "ultimo_odom" dos dois últimos registros assinalados 7322 e 7694, respectivamente, fica repetindo o numero 7083.

    Por que será que isso acontece???


    AMarcos
    Celso Roberto
    Celso Roberto
    VIP
    VIP


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1076
    Registrado : 01/03/2014

    [Resolvido]Registro do último odômetro se repetindo Empty Re: [Resolvido]Registro do último odômetro se repetindo

    Mensagem  Celso Roberto 10/10/2019, 04:50

    Olá..

    Informe o passo a passo para gerar o relatório com esse erro

    Aguardo


    .................................................................................


    Você fica satisfeito ao ter sua dúvida solucionada?.
    Quem te ajuda também fica quando você da o tópico por "Resolvido".
    Veja como neste Link: https://www.maximoaccess.com/t860-resolucao-de-topicos



    A Única coisa que sei é que ainda nada sei, Mas em breve Saberei.....
    avatar
    AMarcos
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 218
    Registrado : 26/07/2016

    [Resolvido]Registro do último odômetro se repetindo Empty Re: [Resolvido]Registro do último odômetro se repetindo

    Mensagem  AMarcos 10/10/2019, 17:07

    Vamos lá!

    O usuário localiza a viatura em que irá lançar o abastecimento, informa os dados referente ao abastecimento, exigidos no formulário, com exceção da informação do campo "Ultimo_Odom", porque para se evitar equívocos no sequencial de abastecimentos, o programa puxa automaticamente (DLast) a informação do campo "Odom_Atual" lançado no último registro daquela viatura.

    Feito isso, salva as informações depois é só clicar no botão "Visualizar relatório" que aparecerá um Form de Pesquisa para que seja dado a opção de gerar relatório de todas as viaturas ou de uma em particular dentro de um período de tempo (DataIni e DataFim) e depois dar um "enter" para habilitar o botão "Visualizar" e clicar nele para gerar o documento com todos os registros lançados.

    Acontece que estou recebendo reclamações do usuário por estar acontecendo repetições neste campo automático, onde ele, usuário, não tem acesso para digitar, a não ser quando lança no campo "Odom_Atual" do registro anterior de uma determinada viatura, onde o programa irá preencher o próximo registro o campo "Ultimo_Odom".

    Ou seja, a informação no campo "Odom_Atual" de uma viatura vira a informação no campo "Ultimo_Odom" no próximo registro de abastecimento daquela viatura. E por algum motivo, em algum momento essa troca de valores para de acontecer e o programa fica repetindo um mesmo valor, mesmo o usuário lançando uma informação nova no campo "Odom_Atual".

    Tentei ser o mais detalhista na minha redação. Aguardo ancioso por sua ajuda meu amigo, nem que seja necessário mudar o código utilizado para conseguir êxito.

    Um abraço,


    AMarcos
    Celso Roberto
    Celso Roberto
    VIP
    VIP


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1076
    Registrado : 01/03/2014

    [Resolvido]Registro do último odômetro se repetindo Empty Re: [Resolvido]Registro do último odômetro se repetindo

    Mensagem  Celso Roberto 10/10/2019, 19:53

    Olá..

    Se este exemplo que anexou é o que esta em uso, realmente pode ocorrer muitos erros de salvar registros com erros.

    Em anexo esta uma alteração básica com algumas alterações.

    Faça teste e veja se atende


    Aguardamos retorno

    Abraços
    Anexos
    [Resolvido]Registro do último odômetro se repetindo AttachmentERROR_Abastecimento_Alterado.zip
    Você não tem permissão para fazer download dos arquivos anexados.
    (194 Kb) Baixado 12 vez(es)


    .................................................................................


    Você fica satisfeito ao ter sua dúvida solucionada?.
    Quem te ajuda também fica quando você da o tópico por "Resolvido".
    Veja como neste Link: https://www.maximoaccess.com/t860-resolucao-de-topicos



    A Única coisa que sei é que ainda nada sei, Mas em breve Saberei.....
    avatar
    AMarcos
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 218
    Registrado : 26/07/2016

    [Resolvido]Registro do último odômetro se repetindo Empty Re: [Resolvido]Registro do último odômetro se repetindo

    Mensagem  AMarcos 11/10/2019, 14:21

    Amigo Celso bom dia!!!

    Verifiquei ontem aqui a alteração realizada por ti, e deu pra perceber que houve uma preocupação de se evitar tais erros provocados pelo usuário.

    Neste fim de semana irei ficar realizando testes para conferir se tudo dará certo e pra poder lhe dar um feedback, e também ao fórum, do resultado obtido.

    Tenho quase a certeza que tudo dará certo!!!

    Desde já agradeço a toda atenção dispensada.

    Att,


    AMarcos
    Celso Roberto
    Celso Roberto
    VIP
    VIP


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1076
    Registrado : 01/03/2014

    [Resolvido]Registro do último odômetro se repetindo Empty Re: [Resolvido]Registro do último odômetro se repetindo

    Mensagem  Celso Roberto 12/10/2019, 17:10

    Olá..

    Lembrando que é um exemplo básico, precisa melhorar no aspecto de segurança, como exemplo bloquear após salvar para que o usuario não altere a combobox e salve novamente com as informações existentes, etc..

    Aguardamos

    Abraços


    .................................................................................


    Você fica satisfeito ao ter sua dúvida solucionada?.
    Quem te ajuda também fica quando você da o tópico por "Resolvido".
    Veja como neste Link: https://www.maximoaccess.com/t860-resolucao-de-topicos



    A Única coisa que sei é que ainda nada sei, Mas em breve Saberei.....
    avatar
    AMarcos
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 218
    Registrado : 26/07/2016

    [Resolvido]Registro do último odômetro se repetindo Empty Re: [Resolvido]Registro do último odômetro se repetindo

    Mensagem  AMarcos 15/10/2019, 12:45

    Bom dia!!! Como seria esse bloqueio?

    Vc diz que seria possível bloquear os formulários depois de salvos? Seria ótimo

    Att,


    AMarcos
    Celso Roberto
    Celso Roberto
    VIP
    VIP


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1076
    Registrado : 01/03/2014

    [Resolvido]Registro do último odômetro se repetindo Empty Re: [Resolvido]Registro do último odômetro se repetindo

    Mensagem  Celso Roberto 15/10/2019, 18:31

    Olá..

    Vou dar alguns exemplos básicos que eu utilizaria neste caso:

    1- Alteraria o evento após atualizar da comb_VtrAbast para este código abaixo para que se o usuario preenchesse o formulario e antes de salvar alterasse a combobox, limparia os dados digitados e busque o nova viatura selecionada.
    Código:
    Private Sub comb_VtrAbast_AfterUpdate()
         
        'Limpa Campos
        Me.Data = ""
        Me.comb_CotaOM = ""
        Me.comb_Marcador = ""
        Me.Novo_Abast = ""
        Me.comb_Posto = ""
        Me.Litros = ""
        Me.Combustivel = ""
        Me.comb_Motorista = ""
        Me.txt_Autorizado = ""
        Me.Cod_Segurança = ""
           
      'Me.Ultimo_Abast = DMax("Odom_Abast", "Abastecimento", "Viaturas='" & Me.comb_VtrAbast & "'") 'Busca o maior valor de abastc. ref a viatura
        Me.Ultimo_Abast = DLast("Odom_Abast", "Abastecimento", "Viaturas='" & Me.comb_VtrAbast & "'") 'Busca o ultimo lançto de abastc. ref a viatura
        Me.txt_Viatura = Me.comb_VtrAbast
       
    End Sub



    2- No evento atual do formulario, usaria este código para que se ao navegar pelos registros e exista dados no formulário o usuário não consiga alterar sem autorização.

    Código:
    Private Sub Form_Current()
        If Not IsNull(Me.txt_Viatura) Or Me.txt_Viatura <> "" Then
            Me.Form.AllowEdits = False
        Else
            Me.Form.AllowEdits = True
        End If
    End Sub



    3- No Botão salvar usuaria este, para que ao salvar bloqueie o formulario para alteração sem autorização.

    Código:
    Private Sub btn_Salvar_Click()
        DoCmd.RunCommand acCmdSaveRecord
        MsgBox "Registro salvo com Sucesso!", vbExclamation + vbOKOnly + vbDefaultButton1, "Aviso"
        Me.Refresh
        Me.Form.AllowEdits = False
    End Sub


    4- Criaria um novo Botão e nomearia como btnEditar e usaria este código para liberar o formulário para edição.

    Código:
    Private Sub btnEditar_Click()
        Me.Form.AllowEdits = True
    End Sub

    Procure por novas possibilidades de o usuário usar de forma errada e encontre maneiras de evita-las

    Aguardamos retorno

    Abraços






    .................................................................................


    Você fica satisfeito ao ter sua dúvida solucionada?.
    Quem te ajuda também fica quando você da o tópico por "Resolvido".
    Veja como neste Link: https://www.maximoaccess.com/t860-resolucao-de-topicos



    A Única coisa que sei é que ainda nada sei, Mas em breve Saberei.....
    avatar
    AMarcos
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 218
    Registrado : 26/07/2016

    [Resolvido]Registro do último odômetro se repetindo Empty Re: [Resolvido]Registro do último odômetro se repetindo

    Mensagem  AMarcos 23/10/2019, 15:28

    Amigo Celso bom dia!

    Seguindo sua orientação estou implementando código que evite de alguma forma que o usuário ao navegar pelos registros provoque algum erro que vá danificar a lógica do programa.

    Mas observei que se o usuário não inserir as informações respeitando a ordem cronológica, o programa puxa o último_odom do último registro independente da data de abastecimento.  Vou tentar ser mais claro:

    No início da semana o usuário começa a realizar os abastecimentos realizados. Ele lança a viatura X com o abastecimento realizado em 14/10/2019  com odom atual de 15000 Km. O Sistema puxa o ultimo registro realizado em 12/10/2019 e coloca em ultimo_odom o valor de 14900 Km. Até aí td bem...
    Mas ele se surpreende com um lançamento não realizado de uma abastecimento no mês passado.  Daí ele clica em novo e começa a digitar os dados do abastecimento atrasado: escolhe a Vtr, o programa puxa o ultimo odom lançado que foi 15000 Km no dia 14/10/2019, mas acontece que os dados desse abastecimento é de 07/09/2019 e com um odom de 13800Km, pronto está gerado o caos...
    Sei que o programa não irá permitir um odom atual menor que o ultimo odom, no caso 13800<15000, mas não seria interessante o programa ao invés de puxar o odom do último registro de abastecimento de uma determinada viatura, não seria mais correto puxar o odom de abastecimento daquela viatura anterior ao valor digitado no campo Data.
    Ou seja, um duplo filtro, pela viatura e também pela data de abastecimento, e daí os lançamento ficariam ordenados além da data, mas também por odom... pq se calhar de acontecer um equívoco na informação e o odom atender ao critério de ser maior que o anterior o programa vai aceitar e aparecer registros errados em relatórios.

    Não sei se me fiz entender...

    Estou tentando agir nesse código:

    Me.Ultimo_Abast = DLast("Odom_Abast", "Abastecimento", "Viaturas='" & Me.comb_VtrAbast & "'") 'Busca o ultimo lançto de abastc. ref a viatura


    Se puder me ajudar fico grato!

    AMarcos
    Celso Roberto
    Celso Roberto
    VIP
    VIP


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1076
    Registrado : 01/03/2014

    [Resolvido]Registro do último odômetro se repetindo Empty Re: [Resolvido]Registro do último odômetro se repetindo

    Mensagem  Celso Roberto 23/10/2019, 22:42

    Olá..

    Se isso acontecer será um problema grave, porque todos os registros subsequentes a esta data retroativa estara errado.

    terá que efetuar a correção de todos para que o lançto atual fique na normalidade.

    IMPORTANTE: corrija o nome do campo Data na tabela abastecimento para DataAbast e no formulario para DtDataAbast

    Evite usar nomes como Data, nome porque são Reservado ao access e pode gerar conflito em códigos

    Para buscar o ultimo Odom_Abast ref a uma data retroativa teste este abaixo no evento após atualizar a data no formulário

    Código:
    Private Sub DtDataAbast_AfterUpdate()
    If Me.DtDataAbast < DLast("DataAbast", "Abastecimento", "Viaturas='" & Me.comb_VtrAbast & "'") Then 'Busca o ultimo lançto de abastc. ref a viatura
    MsgBox "Data de Lancto " & Space(2) & " " & Me!DtDataAbast & " é menor ou igual a data registrada como ultima data de Lancto", vbInformation, "Informação"
    Me.Ultimo_Abast = DLast("Odom_Abast", "Abastecimento", "Viaturas='" & Me.comb_VtrAbast & "' And [DataAbast] <= #" & Format(Me.DtDataAbast, "mm/dd/yyyy") & "# ") 'Busca o ultimo lançto de abastc. ref a viatura
    End If

    End Sub

    No código já esta com os nomes dos campos alterados como solicitei acima

    Aguardo retorno

    Abraços


    .................................................................................


    Você fica satisfeito ao ter sua dúvida solucionada?.
    Quem te ajuda também fica quando você da o tópico por "Resolvido".
    Veja como neste Link: https://www.maximoaccess.com/t860-resolucao-de-topicos



    A Única coisa que sei é que ainda nada sei, Mas em breve Saberei.....
    avatar
    AMarcos
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 218
    Registrado : 26/07/2016

    [Resolvido]Registro do último odômetro se repetindo Empty Re: [Resolvido]Registro do último odômetro se repetindo

    Mensagem  AMarcos 25/10/2019, 13:15

    Realmente amigo o programa começou a puxar realmente o registro certo da época, mas eu observei que o campo data no relatório ficou desordenado, ou seja, não obedece mais a ordem crescente como antes.

    Já tentei aplicar o critério "crescente" na Consulta, mesmo assim não vai...

    Fiz as modificações sugeridas, só que na hora de gerar relatório começou a dar erro:

    "inserir o valor de parâmetro: Data"

    Já caçei td e não encontro onde ainda está esse campo.

    AMarcos
    Anexos
    [Resolvido]Registro do último odômetro se repetindo AttachmentERROR_Abastecimento_Alterado2.zip
    Você não tem permissão para fazer download dos arquivos anexados.
    (410 Kb) Baixado 2 vez(es)
    Celso Roberto
    Celso Roberto
    VIP
    VIP


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1076
    Registrado : 01/03/2014

    [Resolvido]Registro do último odômetro se repetindo Empty Re: [Resolvido]Registro do último odômetro se repetindo

    Mensagem  Celso Roberto 26/10/2019, 02:21

    Olá..

    Para classificar o relatório por data ou qualquer outro campo, abra o relatorio no modo Design clicar na Ribbon agrupar e classificar,
    vai abrir uma caixa imediata abaixo, clique em adicionar uma classificação, vai abrir uma caixa com todos os campos do relatório, selecione o campo desejado e selecione a forma de classificação desejada, salve o relatório e pronto.

    quanto ao inserir parametro é porque em alguma tabela, consulta, formulario, linha de código e o proprio relatório não foi alterado o nome do campo Data.

    Se já revisou tudo e não encontra porque esta tudo Ok, tente compactar e reparar o banco, se não resolver pode ter gerado Bug, ou conflito como de disse acima. a maneira que resta é refazer um novo Relatório.


    Aguardamos retorno

    Abraços


    .................................................................................


    Você fica satisfeito ao ter sua dúvida solucionada?.
    Quem te ajuda também fica quando você da o tópico por "Resolvido".
    Veja como neste Link: https://www.maximoaccess.com/t860-resolucao-de-topicos



    A Única coisa que sei é que ainda nada sei, Mas em breve Saberei.....
    avatar
    AMarcos
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 218
    Registrado : 26/07/2016

    [Resolvido]Registro do último odômetro se repetindo Empty Re: [Resolvido]Registro do último odômetro se repetindo

    Mensagem  AMarcos 26/10/2019, 21:06

    Olá amigão, está ficando 100%!!!

    Sobre o erro de parâmetro, apesar de ter substituído o nome do campo para "DtDataAbast" como vc sugeriu, era necessário atualizar o tipo. Foi só eu selecionar o tipo de dados "Data/Hora", que o erro ao gerar o Realtório desapareceu.

    Acho interessante deixar aqui registrado para que outros amigos iniciantes como eu não venha quebra a cabeça por muito tempo...

    Agora quanto ao ordenamento crescente do campo "Data" no Relatório, confesso que eu desconhecia esse procedimento pela Ribbon "Agrupar e Classificar", valeu muito pela dica.  Ficou certinho!!!

    Mas como nem tudo são flores eu fiz alguns testes para tentar advinhar as possibilidades que o usuário pode realizar ao inserir os dados de abastecimento, como vc tão bem me orientou, e descobri que ainda há possibilidades de erros que podem comprometer a confiabilidade do programa:

    Por exemplo se o usuário for inserir um dado antigo, como por exemplo do dia 15/01/2019 (Vtr 9175 IVECO DAILY VTE AMB), depois de emitir a msg de data menor que a data atual, o programa irá buscar o odom da época (no caso 15547). Até aí td bem!

    O problema ocorre quando ao gerar o Relatório o campo Ultimo_Odom sai com o registro mais atual formecido (16629). Isso pq no Relatório o referido campo estar "Não Associado", e se o usuário colocar um controle nele, o valor sai certo somente nesse abastecimento, os demais abastecimentos ficam em branco.

    E ainda, se o usuário fizer um lançamento atual (26/10/2019) após feito esse atrasado, o programa entende que o valor a ser puxado será de  15/01/2019 e registra um ultimo_odom da época (16534).



    Sei que estou lhe incomodando bastante, mas quero que entenda que esforços de minha parte estão sendo feitos, principalmente pq preciso dar uma solução a esse impasse o quanto antes...

    Por isso desde já agradeço toda atenção até o momento dispensada e aproveito para antecipar os agradecimentos das futuras ajudas... a mais nova é em cima desse problema que lhe descrevi.

    Se eu encontrar algo que resolva, prometo postar aqui logo em seguida.

    Fico no aguardo,


    AMarcos
    Anexos
    [Resolvido]Registro do último odômetro se repetindo AttachmentERROR_Abastecimento_Alterado3.zip
    Você não tem permissão para fazer download dos arquivos anexados.
    (585 Kb) Baixado 5 vez(es)
    Celso Roberto
    Celso Roberto
    VIP
    VIP


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1076
    Registrado : 01/03/2014

    [Resolvido]Registro do último odômetro se repetindo Empty Re: [Resolvido]Registro do último odômetro se repetindo

    Mensagem  Celso Roberto 27/10/2019, 01:15

    Ola..

    Você disse:
    E ainda, se o usuário fizer um lançamento atual (26/10/2019) após feito esse atrasado, o programa entende que o valor a ser puxado será de 15/01/2019 e registra um ultimo_odom da época (16534).

    Para corrigir troco o DLast que busca o ultimo valor de registro, pelo DMáx que busca o maior valor de lançto.

    Troque o atual por este no formulário.
    Código:
    Private Sub comb_VtrAbast_AfterUpdate()
        'Me.Ultimo_Abast = DLast("Odom_Abast", "Abastecimento", "Viaturas='" & Me.comb_VtrAbast & "' AND Nr_Reg<" & Me.Nr_Reg) 'Busca o ultimo lançto de abastc. ref a viatura
        Me.Ultimo_Abast = DMax("Odom_Abast", "Abastecimento", "Viaturas='" & Me.comb_VtrAbast & "' AND Nr_Reg<" & Me.Nr_Reg) 'Busca o maior valor de abastc. ref a viatura
        Me.txt_Viatura = Me.comb_VtrAbast
        Me.txt_NrEB.Value = comb_VtrAbast.Column(2)
    End Sub

    Você disse
    O problema ocorre quando ao gerar o Relatório o campo Ultimo_Odom sai com o registro mais atual formecido (16629). Isso pq no Relatório o referido campo estar "Não Associado", e se o usuário colocar um controle nele, o valor sai certo somente nesse abastecimento, os demais abastecimentos ficam em branco.

    Você não pode usar como critério o campo Nr_Reg, como o foi feito lançto retroativo, o correto é usar a data como critério.
    No relatório troque o atual por este.
    Código:
    Private Sub Detalhe_Format(Cancel As Integer, FormatCount As Integer)
           
        On Error Resume Next
        'Me.txt_UltOdom = DLast("Odom_Abast", "Abastecimento", "Viaturas ='" & txt_Veículo & "' AND Nr_Reg<" & Me.Nr_Reg)
        Me.txt_UltOdom = DMax("Odom_Abast", "Abastecimento", "Viaturas='" & txt_Veículo & "' AND DtDataAbast < #" & Format(Me.DtDataAbast, "mm/dd/yyyy") & "# ") 'Busca o maior valor de abastc. ref a viatura
       
        Me.txt_Autonomia = Format((Val(Nz(Me.txt_OdomAbast)) - Val(Nz(txt_UltOdom))) / Val(Nz(Me.txt_Litros)), "0.00")
        varAcumula1 = varAcumula1 + (Val(Nz(Me.txt_OdomAbast)) - Val(Nz(txt_UltOdom))) / Val(Nz(Me.txt_Litros))
        varAcumula2 = varAcumula2 + 1
       
    End Sub

    Faça testes e retorne

    Abraços


    .................................................................................


    Você fica satisfeito ao ter sua dúvida solucionada?.
    Quem te ajuda também fica quando você da o tópico por "Resolvido".
    Veja como neste Link: https://www.maximoaccess.com/t860-resolucao-de-topicos



    A Única coisa que sei é que ainda nada sei, Mas em breve Saberei.....
    avatar
    AMarcos
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 218
    Registrado : 26/07/2016

    [Resolvido]Registro do último odômetro se repetindo Empty Re: [Resolvido]Registro do último odômetro se repetindo

    Mensagem  AMarcos 27/10/2019, 03:35

    Conforme o prometido, voltei após feito todos os testes, para agradecer ao amigo mestre Celso:

    Deu tudo certo amigo!!!

    O formulário ficou redondo. Ficou 100%


    Muito obrigado mesmo!!!

    Espero não voltar a incomodar, mas se voltar espero sempre contar com ajuda do amigo e de todos amigos mestres do fórum.


    AMarcos
    Celso Roberto
    Celso Roberto
    VIP
    VIP


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1076
    Registrado : 01/03/2014

    [Resolvido]Registro do último odômetro se repetindo Empty Re: [Resolvido]Registro do último odômetro se repetindo

    Mensagem  Celso Roberto 27/10/2019, 04:00

    Olá..

    Fico feliz por ter ajudado.
    Se esta tudo Ok, encerre o tópico como Resolvido( isto é muito importante)

    Veja como aqui
    https://www.maximoaccess.com/t860-resolucao-de-topicos

    Digite uma mensagem e ao finalizar Clique primeiro no Botão RESOLVIDO e depois em ENVIAR

    Aguardamos

    Abraços


    .................................................................................


    Você fica satisfeito ao ter sua dúvida solucionada?.
    Quem te ajuda também fica quando você da o tópico por "Resolvido".
    Veja como neste Link: https://www.maximoaccess.com/t860-resolucao-de-topicos



    A Única coisa que sei é que ainda nada sei, Mas em breve Saberei.....
    avatar
    AMarcos
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 218
    Registrado : 26/07/2016

    [Resolvido]Registro do último odômetro se repetindo Empty Re: [Resolvido]Registro do último odômetro se repetindo

    Mensagem  AMarcos 29/10/2019, 10:15

    Isso mesmo! Fiquei tão empolgado com a solução do problema que acabei esquecendo de "dar o resolvido".

    Obg amigo está tudo OK!

    AMarcos
    Celso Roberto
    Celso Roberto
    VIP
    VIP


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1076
    Registrado : 01/03/2014

    [Resolvido]Registro do último odômetro se repetindo Empty Re: [Resolvido]Registro do último odômetro se repetindo

    Mensagem  Celso Roberto 30/10/2019, 01:49

    Olá..


    O fórum agradece o seu retorno

    Precisando estaremos por aqui

    Abraços e sucesso


    .................................................................................


    Você fica satisfeito ao ter sua dúvida solucionada?.
    Quem te ajuda também fica quando você da o tópico por "Resolvido".
    Veja como neste Link: https://www.maximoaccess.com/t860-resolucao-de-topicos



    A Única coisa que sei é que ainda nada sei, Mas em breve Saberei.....
    avatar
    AMarcos
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 218
    Registrado : 26/07/2016

    [Resolvido]Registro do último odômetro se repetindo Empty Re: [Resolvido]Registro do último odômetro se repetindo

    Mensagem  AMarcos 18/11/2019, 04:01

    Amigão Celso estou eu aqui de novo a lhe incomodar...

    Mas o pior que não é com um problema novo mas sim com o mesmo.  Pra ser sincero acho que um pouquinho pior.

    No banco de Dados que estarei postando está acontecendo a mesma repetição de odômetro, como pro exemplo se você selecionar o Relatório de abastecimento do veículo L 200 TRITON, de 01/01/2019 até o dia de HOJE, observará que o último odômetro (923 Km) se repete desde o dia 26/03/2019 até o dia 22/07/2019, onde começa uma outra repetição de último odômetro (9315 Km). O mesmo acontece com o veículo FURGÃO.

    E o agravante que em 20/03/2019, o programa não me deixa lançar um novo odômetro de abastecimento alegando que o odômetro digitado 91165 Km) é menor que o último lançado (923 Km).

    Nossa!!! Está complicado mas no BD você virá acontecendo e vai clarear as coisa. estou a uma semana fazendo testes e simulações pra vê se consigo mais deixar isso acontecer, mas confesso que nada se alterou, e por isso recooro mais uma vez ao amigo.

    Gostaria de mais essa atenção, pois esse módulo Abastecimento  está me dando muito trabalho, já penso em excluir ele do projeto... desespero... kkkk

    Att,

    AMarcos
    Anexos
    [Resolvido]Registro do último odômetro se repetindo AttachmentERROR_Abastecimento_AINDA.zip
    Você não tem permissão para fazer download dos arquivos anexados.
    (475 Kb) Baixado 14 vez(es)
    Celso Roberto
    Celso Roberto
    VIP
    VIP


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1076
    Registrado : 01/03/2014

    [Resolvido]Registro do último odômetro se repetindo Empty Re: [Resolvido]Registro do último odômetro se repetindo

    Mensagem  Celso Roberto 22/11/2019, 19:58

    Olá..

    Desculpe a demora em te responder, só hoje consegui um tempo para ver o seu caso.

    A solução de todo o problema é simples.

    Vá na tabela Abastecimento e troque os campos Ultimo_Abast e Odom_Abast para números e pronto.


    Faça os testes e retorne

    Aguardamos

    Abraços


    .................................................................................


    Você fica satisfeito ao ter sua dúvida solucionada?.
    Quem te ajuda também fica quando você da o tópico por "Resolvido".
    Veja como neste Link: https://www.maximoaccess.com/t860-resolucao-de-topicos



    A Única coisa que sei é que ainda nada sei, Mas em breve Saberei.....
    avatar
    AMarcos
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 218
    Registrado : 26/07/2016

    [Resolvido]Registro do último odômetro se repetindo Empty Re: [Resolvido]Registro do último odômetro se repetindo

    Mensagem  AMarcos 23/11/2019, 21:40

    Sim meu amigo. Realizei os testes e deu tudo certo.

    Detalhes que na hora do desespero nem se vê o pq de estar dando errado...

    Muito obg pela sua espertiz!

    Att,


    AMarcos

    Conteúdo patrocinado


    [Resolvido]Registro do último odômetro se repetindo Empty Re: [Resolvido]Registro do último odômetro se repetindo

    Mensagem  Conteúdo patrocinado


      Data/hora atual: 26/4/2024, 13:17