Ver Mensaje Individual
  #4  
Antiguo 11-06-2003
andres1569 andres1569 is offline
Miembro
 
Registrado: may 2003
Posts: 908
Reputación: 24
andres1569 Va por buen camino
Aquí va una función recién salida del horno.

Lo que hace es devolver los minutos transcurridos entre dos fechas (TDateTime). Quizás deberías plantearte que el campo Consumo fuera un Integer pues almacena minutos, no una fecha ni un instante.

Código:
function MinutosEntreFechas (d1, d2 : TDateTime) : Longint;
var
  ds1, ds2 : TTimeStamp;
begin
// aquí se podría comprobar que d2 es mayor que d1
  ds1 := DateTimeToTimeStamp (d1);
  ds2 := DateTimeToTimeStamp (d2);
  if ds2.Date = ds1.Date then
    result := (ds2.Time - ds1.Time) div 60000  
  else result := ((ds2.Time + 86400000 - ds1.Time) div 60000) + (ds2.Date - ds1.Date - 1) * 1440;
end;
Supongo que capturas cada instante mediante la función Now, que devuelve Fecha + Hora.
__________________
Guía de Estilo
Responder Con Cita