Asunto: Restar dos horas y obtener la diferencia en número
¿Existe en Delphi alguna función para restar dos horas (de tipo TTime) y obtener la diferencia en número? lo que pretendo es lo siguiente:
Tengo una hora de entrada y una hora de salida y quiero saber las horas que hay trabajado un técnico (restando estas dos).
Publicado:
Mar Sep 12, 2006 8:12 am
alonsojpd Administrador/Moderador
Registrado: Sep 16, 2003 Mensajes: 2208
Asunto: Re: Restar dos horas y obtener la diferencia en número
delphi-time escribió:
¿Existe en Delphi alguna función para restar dos horas (de tipo TTime) y obtener la diferencia en número? lo que pretendo es lo siguiente:
Tengo una hora de entrada y una hora de salida y quiero saber las horas que hay trabajado un técnico (restando estas dos).
En la unidad DateUtils de Delphi existen multitud de funciones para tratamiento de fechas y horas. La función para restar dos horas y obtener el número de horas (en Double) es HourSpan. A continuación te mostramos un ejemplo de uso de esta función:
type
TForm1 = class(TForm)
Button1: TButton;
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.Button1Click(Sender: TObject);
var
horaEntrada : TTime;
horaSalida : TTime;
begin
horaentrada := Now;
//incrementamos 5 horas a la hora de salida (para ver el resultado)
horaSalida := IncHour(now, 5);
ShowMessage ('Horas empleadas: ' + FloatToStr (HourSpan(horaSalida, horaEntrada)));
end;
end.
Nota: hemos utilizado también otra función de esta unidad llamada IncHour para incrementar a una fecha un número de horas.
No olvides poner en el uses del formulario la unidad DateUtils.
Puede publicar nuevos temas en este foro No puede responder a temas en este foro No puede editar sus mensajes en este foro No puede borrar sus mensajes en este foro No puede votar en encuestas en este foro