[WD12]-Heures secondes

Le
Laurent
Bonjour

Je me débat avec la gestion des heures de windev.
Est-ce que quelqu'un connait la fonction (ou un algo) pour avoir
l'équivalent de la fonction SQL time_to_sec en windev ?
Ca doit être bête mais je suis noyé !
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
paratge
Le #14486671
Laurent a écrit :
Bonjour

Je me débat avec la gestion des heures de windev.
Est-ce que quelqu'un connait la fonction (ou un algo) pour avoir
l'équivalent de la fonction SQL time_to_sec en windev ?
Ca doit être bête mais je suis noyé !




Bonjour,

je crois que la fonction HeureSys() fait ça très bien, elle retoure
hhmmsscc donc avec les centièmes, donc pour n'avoir que l'équivalentr de
time_to_sec il te faut faire gauche(HeureSys(),6) qui retoure hhmmss.

La mise ne forme de l'heure se fait avec
HeureVersChaine(gauche(HeureSys(),6)) ou encore
Gauche(HeureVersChaîne("HeureSys()), 8)
on met 8 car en plus des 6 chiffres il y a 2 séparateurs ":"
paratge
Le #14486661
Laurent a écrit :
Re,

Désolé,
on ne lit jamais assez les consignes :)
tu as parlé de time_to sec et pas de sec_to_time je me suis mélangé les
crayons.

Pour transformer un heure en secondes c'est avec HeureVersEntier() qui
convertit l'heure en centièmes de secondes, donc pour n'avoir que les
secondes, il faut le diviser par 100.
Pierre BOUSQUET
Le #14486631
PROCEDURE
DateHeureDifferenceVersSecondes(Dth1,Dth2ÚteSys()+HeureSys(),EnCentiemeúux)
SI PAS DateHeureValide(Dth1) OU PAS DateHeureValide(Dth2) ALORS
RENVOYER 0

Dur est une Durée = ChaîneVersDurée(DateHeureDifférence
(Dth1,Dth2),duréeCentième )
Tps est réel =
86400*Dur..Jour+3600*Dur..Heure+60*Dur..Minute+Dur..Seconde

SI EnCentieme ALORS
Tps=Tps+(Val(Droite(Dth2,3))-Val(Droite(Dth1,3)))/1000
FIN

RENVOYER Tps


Laurent a utilisé son clavier pour écrire :
Bonjour

Je me débat avec la gestion des heures de windev.
Est-ce que quelqu'un connait la fonction (ou un algo) pour avoir l'équivalent
de la fonction SQL time_to_sec en windev ?
Ca doit être bête mais je suis noyé !



--
Pierre BOUSQUET

" Ne me dites pas que ce problème est difficile.
S'il n'était pas difficile, ce ne serait pas un problème. "
Laurent
Le #14486611
> PROCEDURE
DateHeureDifferenceVersSecondes(Dth1,Dth2ÚteSys()+HeureSys(),EnCentiemeúux)
SI PAS DateHeureValide(Dth1) OU PAS DateHeureValide(Dth2) ALORS RENVOYER 0

Dur est une Durée = ChaîneVersDurée(DateHeureDifférence
(Dth1,Dth2),duréeCentième )
Tps est réel = 86400*Dur..Jour+3600*Dur..Heure+60*Dur..Minute+Dur..Seconde

SI EnCentieme ALORS
Tps=Tps+(Val(Droite(Dth2,3))-Val(Droite(Dth1,3)))/1000
FIN

RENVOYER Tps


Laurent a utilisé son clavier pour écrire :
Bonjour

Je me débat avec la gestion des heures de windev.
Est-ce que quelqu'un connait la fonction (ou un algo) pour avoir
l'équivalent de la fonction SQL time_to_sec en windev ?
Ca doit être bête mais je suis noyé !





Super, ça marche, merci beaucoup à vous deux.
Publicité
Poster une réponse
Anonyme