Fórum Somar campos com horas #209594

26/01/2004

0

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

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

Oadventista

Responder

Posts

26/01/2004

Fabio.hc

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); 



Responder

Gostei + 0

26/01/2004

Oadventista

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


Responder

Gostei + 0

27/01/2004

Oadventista

Pessoal desculpem a ignorânciaaaaa. já descobri o erro, foi de digitação, esta diminuindo um campo por ele mesmo.

Valeu


Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar