Calcul de diffirence entre 2 Tdatetime en min

Résolu
cs_cheggour
Messages postés
20
Date d'inscription
mercredi 15 janvier 2003
Statut
Membre
Dernière intervention
24 novembre 2008
- 12 févr. 2008 à 11:44
BernieNoel68
Messages postés
92
Date d'inscription
vendredi 12 octobre 2007
Statut
Membre
Dernière intervention
20 novembre 2009
- 12 févr. 2008 à 14:31
Bonjour tous,

je souhaite calculer la différence en minute entre deux TDatetime sans prendre
en considération  les jours, le mois et l'année.

Merci d'avance.

3 réponses

BernieNoel68
Messages postés
92
Date d'inscription
vendredi 12 octobre 2007
Statut
Membre
Dernière intervention
20 novembre 2009
1
12 févr. 2008 à 14:31
Etant donnée qu'en Delphi les type TDate, TTime ou TDateTime sont en faite des nombres réèls, si tu veux faire la somme il suffit de les additionner.  (regarde l'aide Delphi en appuyant sur F1 pour en savoir plus sur ces types).

-----------------------------------------

t1, t2, t3 : TTime ;
t1 = EncodeTime(1,00,00,00) ;    // t1 vaut donc 01h 00min 00sec
t2 = EncodeTime(2,25,00,00) ;    // t2 vaut donc 02h 25min 00sec
t3 = t1 + t2 ;                   // t3 vaut donc 03h 25min 00sec

-----------------------------------------

Selon ta version de Delphi, tu peut aussi utiliser IncMinute, IncSecond, IncHour qui renvoi une valeur TDateTime incrémenter d'un certain nombre d'heure, minutes ou secondes.

-----------------------------------------
t1, t2 : TTime ;
t1 = EncodeTime( 10, 15, 0, 0 ) ;  // t1 vaut donc 10h15min00sect2 IncMinute( t1, 10 );          // t2 vaut donc 10h25min00sec ( t1 + 10min)
-----------------------------------------

En espérant t'aider!

Bon courage
3
BernieNoel68
Messages postés
92
Date d'inscription
vendredi 12 octobre 2007
Statut
Membre
Dernière intervention
20 novembre 2009
1
12 févr. 2008 à 12:31
Bonjour,

Peut etre en utilisant la fonction DecodeTime:

------------------------------------------------------
date1, date2 : TDateTime;

h1, m1, s1, z1, h2, m2, s2, z2  : Word;

DecodeTime( date1, h1, m1, s1, z1 ) ;
DecodeTime( date2, h2, m2, s2, z2 ) ;
------------------------------------------------------

Il ne te reste plus alors qu'a tester les valeurs et a faire la difference.

Sinon il existe la fonction MinutesBetween mais je ne sais pas si elle est présente sur toutes les versions de Delphi.

En espérant que j'ai pu t'aider un peu...

Bon courage.
0
cs_cheggour
Messages postés
20
Date d'inscription
mercredi 15 janvier 2003
Statut
Membre
Dernière intervention
24 novembre 2008

12 févr. 2008 à 13:11
Merci,
je crois que cette fonction va faire l'affaire merci bcp .Est se que vous connaissez comment calculer la somme de plusieurs valeurs de type Time (hh:mm:ss)
0