Hola gonza.
Mirá, para sacarme la duda hice una tabla con un solo campo: 'Entrada' de tipo
TTimeField.
Luego cargué aleatoriamente las horas con un for y probé el código puesto por
roman. No obtuve ningún error.
Esta es la prueba que hice por si te ayuda en algo:
Código Delphi
[-]
procedure TForm1.Button1Click(Sender: TObject);
var
tt,h,m,s: Word;
TotalEntrada: TTime;
begin
Query1.Close;
Query1.SQL.Clear;
Query1.SQL.Add('SELECT SUM( ');
Query1.SQL.Add('3600*EXTRACT(HOUR FROM ENTRADA)+');
Query1.SQL.Add('60*EXTRACT(MINUTE FROM ENTRADA)+');
Query1.SQL.Add('EXTRACT(SECOND FROM ENTRADA)) ');
Query1.SQL.Add('AS TOT_ENTRADA FROM PRUEBA');
Query1.Open;
tt:= Query1.FieldByName('TOT_ENTRADA').Value;
h:= tt div 3600;
m:= (tt mod 3600) div 60;
s:= (tt mod 3600) mod 60;
TotalEntrada:= EncodeTime(h, m, s,0);
Caption:= TimeToStr(TotalEntrada);
end;
Saludos.