Somar campos com horas
Olá pessoal,
é o seguinte tenho um form onde é apresentado uma lista de chamada por aluno, na tabela de chamda tem um campo de entrada e outro de saida da escola, estes são do tipo time, quando eu mando exibir o form gostaria que aprecesse em baixo o total de horas que o alunos fez, fiz o seguite procedimento, porém não deu certo, o total fica com 00:00 hs
Valeu.
Paulo
é o seguinte tenho um form onde é apresentado uma lista de chamada por aluno, na tabela de chamda tem um campo de entrada e outro de saida da escola, estes são do tipo time, quando eu mando exibir o form gostaria que aprecesse em baixo o total de horas que o alunos fez, fiz o seguite procedimento, porém não deu certo, o total fica com 00:00 hs
procedure TfrmRelPresNome.FormShow(Sender: TObject); var tot : TTime; dif : TTime; begin tot := StrToTime(´00:00´); while (DM.QyRelPresNome.Eof) do begin dif := StrToTime(´00:00´); dif := StrToTime(DM.QyRelPresNome.Fields[4].AsString) - StrToTime(DM.QyRelPresNome.Fields[4].AsString); tot := tot + dif; DM.QyRelPresNome.Next; end; label1.Visible := True; Label1.Caption := ´Total de Horas: ´ + TimeToStr(tot); end;
Valeu.
Paulo
Oadventista
Curtidas 0
Respostas
Fabio.hc
26/01/2004
Se não foi erro de digitação, nesta linha vc esta subtraindo o campo por ele mesmo, vai ser sempre 0.
dif := StrToTime(DM.QyRelPresNome.Fields[4].AsString) - StrToTime(DM.QyRelPresNome.Fields[4].AsString);
GOSTEI 0
Oadventista
26/01/2004
Não deu certo colocando o sinal de mais, um pequeno detalhe, eu não preciso primeiro achar a difereça nas horas e depois ir somando-as, tipo o cara entra as 09:00 e sai as 10:00 em um dia, no outro dia no mesmo horário, então ele vai ter 2 horas de presença certo, então não é preciso primeiro achar o total de horas de cada dia e depois ir adcionando-as em um total.
Valeu
Paulo
Valeu
Paulo
GOSTEI 0
Oadventista
26/01/2004
Pessoal desculpem a ignorânciaaaaa. já descobri o erro, foi de digitação, esta diminuindo um campo por ele mesmo.
Valeu
Valeu
GOSTEI 0