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

    Novamente o registro do último odômetro está 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

    Novamente o registro do último odômetro está se repetindo Empty Novamente o registro do último odômetro está se repetindo

    Mensagem  AMarcos 19/11/2019, 13:59

    Os amigos mestre me perdoem, mas abro esse novo tópico com um assunto antigo, que inclusive foi dado como RESOLVIDO, porque realmente há necessidade...

    O mestre Celso me ajudou muito a sanar o problema que existia na época, e nos testes que fiz durante dias parecia ter resolvido.  Até que me surpreendo com o usuário reclamando da mesma situação.  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).

    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 recorro mais uma vez ao amigo.

    Gostaria de mais essa atenção, pois esse módulo Abastecimento  está me dando muito trabalho... desespero... kkkk

    Att,

    AMarcos
    Anexos
    Novamente o registro do último odômetro está se repetindo AttachmentERROR_Abastecimento_AINDA.zip
    Você não tem permissão para fazer download dos arquivos anexados.
    (475 Kb) Baixado 8 vez(es)
    avatar
    renpv
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 323
    Registrado : 12/01/2015

    Novamente o registro do último odômetro está se repetindo Empty Re: Novamente o registro do último odômetro está se repetindo

    Mensagem  renpv 20/11/2019, 16:30

    Amigo, substitua todo o código VBA do relatório pelo que segue:
    Código:
    Option Compare Database

    Private varAcumula1
    Private varAcumula2

    Private Sub Detalhe_Format(Cancel As Integer, FormatCount As Integer)
    Dim rs As DAO.Recordset
    Dim db As Database
    Dim ssql As String
    Set db = CurrentDb
    ssql = "SELECT TOP 1 Odom_Abast FROM Abastecimento " _
            & "WHERE (((DtDataAbast)<#" & Format(Me.DtDataAbast, "mm/dd/yyyy") & "#) AND ((Viaturas)='" & txt_Veículo & "'))" _
            & "ORDER BY DtDataAbast DESC;"
            
    Set rs = db.OpenRecordset(ssql)

        On Error Resume Next
        Me.txt_UltOdom = rs!Odom_Abast
        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

    Private Sub Report_Close()
    DoCmd.OpenForm "Informe Abastecimento", acNormal
    End Sub

    Private Sub RodapéDoRelatório_Print(Cancel As Integer, PrintCount As Integer)
    If varAcumula1 = 0 And varAcumula2 = 0 Then
        Me!Texto45.Value = 0
    Else
        Me.Texto45.Value = Format(varAcumula1 / varAcumula2, "0.00")
    End If
    varAcumula1 = 0
    varAcumula2 = 0
    End Sub


    Mudaram poucas linhas, mas pra ficar mais seguro eu copiei tudo.
    avatar
    AMarcos
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

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

    Novamente o registro do último odômetro está se repetindo Empty Re: Novamente o registro do último odômetro está se repetindo

    Mensagem  AMarcos 20/11/2019, 21:54

    Amigo troquei as linhas que precisavam e realmente deu tudo certo.

    Mas vou realizar mais alguns testes (simulações) antes de dar com Resolvido.

    Muito obrigado mesmo por sua dedicação em me ajudar. Está quebrando uma árvore...

    Att,


    AMarcos
    avatar
    renpv
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 323
    Registrado : 12/01/2015

    Novamente o registro do último odômetro está se repetindo Empty Re: Novamente o registro do último odômetro está se repetindo

    Mensagem  renpv 20/11/2019, 23:17

    Com esse código aí vai dar problema quando for feito dois abastecimentos no mesmo dia.

    Pra corrigir isso você terá que fazer outras validaçõ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

    Novamente o registro do último odômetro está se repetindo Empty Re: Novamente o registro do último odômetro está se repetindo

    Mensagem  AMarcos 22/11/2019, 23:35

    Isso somente para dois abastecimentos na mesma veículo, correto?

    Não é muito comum, mas acontece dois abastecimentos de uma mesma veículo num mesmo dia, às vezes até três...

    Tô tentando verificar essas tais validações...

    Outra coisa, notei que no Formulário os erros permanecem, somente no Relatório ficou correspondente ao que foi abastecido e na ordem.

    Vamos tentando, aceitos novas sugestões e ajuda!

    Att,


    AMarcos
    avatar
    renpv
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 323
    Registrado : 12/01/2015

    Novamente o registro do último odômetro está se repetindo Empty Re: Novamente o registro do último odômetro está se repetindo

    Mensagem  renpv 23/11/2019, 00:06

    Minha sugestão é que, ao invés de ficar buscando o último lançamento no relatório, grave logo esse dado (odômetro anterior) no lançamento do abastecimento. Se quiser fazer assim dá até pra fazer essa busca em cada lançamento. Não sei se me fiz entender, mas eu faria assim.

    Conteúdo patrocinado


    Novamente o registro do último odômetro está se repetindo Empty Re: Novamente o registro do último odômetro está se repetindo

    Mensagem  Conteúdo patrocinado


      Data/hora atual: 7/5/2024, 02:18