Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > OOP
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 14-05-2006
Avatar de anghell77
anghell77 anghell77 is offline
Miembro
 
Registrado: may 2006
Posts: 194
Poder: 18
anghell77 Va por buen camino
Resta de Horas mediante DateTimePicker??

Hola.....Gracias a todos por ayudar....
Delphi 7 Paradox7 ...

Estoy buscando la manera de realizar restas de tiempos (hh:mm:ss), dados desde dos dateTimePicker....esto...bien, yo no se para que...pues es algo que quiere el wey que desea bonificar a quienes permanecen mas tiempo dentro de la aplicacion, la cual, al entrar un usuario, registra fecha y hora de entrada, y al cambiar el usuario, realiza lo mismo, pero a la salida...

Personalmente, creo que es mejor el registro de entrada y salida unicamente, pero, ps al cliente lo que chinga...perdon, lo que pida....


he visto la ayuda y he intentado decodificar el Tiempo, mediante el procedimiento, he buscado el tipo de variables que me almacenen el tiempo de un DTPkr, pero no he logrado mucho con ello....y pues en realidad no se....soy un poco lento en esto....sorry
...pero ps no enviaría la pregunta si lo hubiera solucionado....

Ayuda...y Gracias de Antemano

Última edición por anghell77 fecha: 14-05-2006 a las 10:11:41.
Responder Con Cita
  #2  
Antiguo 14-05-2006
Avatar de Lepe
[Lepe] Lepe is offline
Miembro Premium
 
Registrado: may 2003
Posts: 7.424
Poder: 28
Lepe Va por buen camino
Mira las funciones de la unidad DateUtils:

MillisecondsBetween
etc...

Saludos
__________________
Si usted entendió mi comentario, contácteme y gustosamente,
se lo volveré a explicar hasta que no lo entienda, Gracias.
Responder Con Cita
  #3  
Antiguo 15-05-2006
Avatar de anghell77
anghell77 anghell77 is offline
Miembro
 
Registrado: may 2006
Posts: 194
Poder: 18
anghell77 Va por buen camino
Lo mismo...

No he logrado solucionar nada con las funciones....
Lo siento...he batallado un resto con esta situacion....no creen ustedes que es mejor simplemente registrar hora de entrada y salida??
Responder Con Cita
  #4  
Antiguo 15-05-2006
Avatar de ContraVeneno
ContraVeneno ContraVeneno is offline
Miembro
 
Registrado: may 2005
Ubicación: Torreón, México
Posts: 4.738
Poder: 23
ContraVeneno Va por buen camino
¿no puedes simplemente restar el valor de la entrada menos el valor de la salida?

si mi memoria no me falla, eso te dara un valor flotante donde la parte entera son los días y la parte decimal son las horas.
__________________

Responder Con Cita
  #5  
Antiguo 15-05-2006
luisgutierrezb luisgutierrezb is offline
Miembro
 
Registrado: oct 2005
Ubicación: México
Posts: 925
Poder: 19
luisgutierrezb Va por buen camino
quieres saber cuanto duraron en el sistema??
digamos...
Código Delphi [-]
Var
  Entrada,Salida, diferencia:TDatetime;
  dias:Integer;
  horas:string;
begin
  Entrada := DatetimePicker1.Date;
  Salida := Datetimepicker2.date;
  diferencia := salida - entrada;
  //para conocer el numero de dias que estuvo en el sistema:
  dias := Trunc(diferencia);
  //para conocer cuantas horas estuvo en el sistema:
  horas := formatdatetime('hh:mm:ss', Frac(diferencia));
end;

Espero te sirva, saludos!!
Responder Con Cita
  #6  
Antiguo 15-05-2006
Avatar de anghell77
anghell77 anghell77 is offline
Miembro
 
Registrado: may 2006
Posts: 194
Poder: 18
anghell77 Va por buen camino
Parece ser que con eso basto.....

Ok, Luis, parece que eso ha bastado para solucionar el problema este, he añadido un MaskEdit con Máscara de ShortTime para que me devuelva el valor...y falta hacer unos arreglos (conversiones) para realizar los calculos necesarios....Gracias....

Eso fue todo en este hilo....Gracias
Responder Con Cita
  #7  
Antiguo 04-07-2006
Avatar de Ferrari
Ferrari Ferrari is offline
Miembro
 
Registrado: jun 2006
Ubicación: Torreón, México
Posts: 154
Poder: 18
Ferrari Va por buen camino
Checate con Esto

Necesitas sacar el total de minutos ..prueba con este query:

select (3600*(sum(Datepart(hour,salida))) + 60*(sum(Datepart(minute,salida))) + (sum(Datepart(second,salida))) )-
(3600*(sum(Datepart(hour,entrada))) + 60*(sum(Datepart(minute,entrada))) + (sum(Datepart(second,entrada))) ) as TotalMinutos
from nres nolock
where convert(varchar (8),Entrada,112)='20050307'
and NoEmp=12

una vez que tengas el numero de minutos lo armas de nueva cuenta:
procedure TForm1.Button3Click(Sender: TObject);
var
T, H, M, S: Integer;
Time: TTime;
begin
//T := Query1['total'];
T := 27372;
H := T div 3600;
M := (T mod 3600) div 60;
S := (T mod 3600) mod 60;
Time := EncodeTime(H, M, S, 0);
label4.Caption:= TimeToStr(Time);
end;
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Resta de horas didier Varios 24 18-11-2010 23:11:54
REsta Fechas Juanito-Kun Firebird e Interbase 2 11-10-2005 20:52:23
Resta equivocada... jhonny Varios 6 26-09-2005 18:43:20
Resta de Tablas con SQL agova SQL 8 24-11-2003 21:20:25
resta horas y minutos botones67 Varios 4 12-06-2003 18:55:54


La franja horaria es GMT +2. Ahora son las 19:02:01.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi