Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

[WD 7.5] ajout d'un temps à un heure

3 réponses
Avatar
SFCI Conseil - Jean Philippe
bonjour
je souhaite lorsque mon prog s'exécute pouvoir ajouter un durée de
fonctionnement à l'heure d'exécution pour avoir l'heure d'arrêt du prog mais
je n'y arrive pas
exemple (algo) :
TANTQUE pas TraitementFini ou pas HeureArretAtteinte
// instruction
FIN
j'ai essayé plusieurs solutions sans en trouver une bonne pour pouvoir
ajouter des heures en ayant un résultat valide

HeureArret est une chaine // pour recup l'heure de fin
HeureDeb est une chaîne = HeureSys()
Duree est une chaîne = MonFichier.MaRubrique (format heure)
HeureArretAtteinte = HeureDeb + Duree
il me renvoi un peu n'importe quoi
si j'ai :
HeureDeb = 1000
Duree = 2000
HeureArretAtteinte = 3000 >>> faux il devrait me dire 0600 donc je ne sais
comment faire ceci et aussi voir qu'il y a eu changement de jour si qq'un à
un idée je suis preneur
j'espère avoir été assez clair dans ce que je veux faire
merci

--
JeAn-PhI

3 réponses

Avatar
Stéphane
"SFCI Conseil - Jean Philippe" wrote in
news:3f66d455$0$27048$:

bonjour


Salut

je souhaite lorsque mon prog s'exécute pouvoir ajouter un durée de
fonctionnement à l'heure d'exécution pour avoir l'heure d'arrêt du
prog mais je n'y arrive pas



Dans l'aide de Windev sur les heures

HeureDébut est une heure= "20011201"

// Ajoute 5 heures
HeureDébut..Heure +=5
// Modifie le nombre de minutes
HeureDébut..Minutes= 5

En espérant que ça pourra vous aider
Avatar
farplus
^



Bonjour,

date_dep, date_arr, heure_dep, heure_arr sont des entiers

date_depÚteversentier(datesys())
heure_dep=val(Gauche(heuresys(),2) * 3600 + ...
val(milieu(heuresys(),3,2) * 60 + val(milieu(heuresys(),5,2)

// là tu as l'heure de début en secondes.
heure_arr=heure_dep+duree
// ensuite tu ajoutes ta durée exprimé en secondes
date_arrÚtedepart+(heure_arr / 86400) // les secondes par jour
date_que tu cherches=entiersversdate(date_arr)
temp est un entier=Modulo(heure_arr, 86400)
heure est un entier=temp/3600
temp=modulo(temp,3600)
minutes est un entier=temp/60
secondes est un entier=modulo(temp,60)
arrivee est une
chaine=NVC(heure,"-2d")+NVC(minutes,"-2d")+NVC(secondes,"-2d"+"00"
si datesys() = date... et Heuresys()>=arrivee alors fin

A+
n


"SFCI Conseil - Jean Philippe" a écrit dans
le message de news: 3f66d455$0$27048$
bonjour
je souhaite lorsque mon prog s'exécute pouvoir ajouter un durée de
fonctionnement à l'heure d'exécution pour avoir l'heure d'arrêt du prog


mais
je n'y arrive pas
exemple (algo) :
TANTQUE pas TraitementFini ou pas HeureArretAtteinte
// instruction
FIN
j'ai essayé plusieurs solutions sans en trouver une bonne pour pouvoir
ajouter des heures en ayant un résultat valide

HeureArret est une chaine // pour recup l'heure de fin
HeureDeb est une chaîne = HeureSys()
Duree est une chaîne = MonFichier.MaRubrique (format heure)
HeureArretAtteinte = HeureDeb + Duree
il me renvoi un peu n'importe quoi
si j'ai :
HeureDeb = 1000
Duree = 2000
HeureArretAtteinte = 3000 >>> faux il devrait me dire 0600 donc je ne sais
comment faire ceci et aussi voir qu'il y a eu changement de jour si qq'un


à
un idée je suis preneur
j'espère avoir été assez clair dans ce que je veux faire
merci

--
JeAn-PhI




Avatar
SFCI Conseil - Jean Philippe
merci à tous les 2

--
JeAn-PhI