OVH Cloud OVH Cloud

Saisir une durée de plus de 24h00

4 réponses
Avatar
nabar
Bonjour,
je souhaite saisir une durée de 35h00 par exemple.
J'ai déclaré ma zone ede cette facon :
type : date
format:durée.
Mais je n'arrive pas saisir au dela de 23h59.
Sinon existe il un autre moyen pour travaillé avec des horaires > 24h ?
(sachant que j'ai essayé le type heure qui bloque aussi à 23h59 )

Merci
Nathalie.

4 réponses

Avatar
dom
Bonjour,

j'ai déjà été confronté à ce problème et m'en étais sortie en créant un
champ de saisie avec masque 99:99.
Je faisais ensuite une extraction des 2 caractères gauche et 2 caractères
droite pour faire mes calculs.
Si quelqu'un a une meilleure idée, je le félicite d'avance.

Dom
Avatar
Eric Demeester
dans (in) fr.comp.developpement.agl.windev, "dom"
ecrivait (wrote) :

Bonsoir,

j'ai déjà été confronté à ce problème et m'en étais sortie en créant un
champ de saisie avec masque 99:99.
Je faisais ensuite une extraction des 2 caractères gauche et 2 caractères
droite pour faire mes calculs.



Ayant eu à traiter ça avec des outils plus rustiques que Windev [*],
j'ai pris l'habitude de faire comme ça :

- un champ de saisie « nombre d'heures » (chaîne avec masque
de saisie 999) ;
- un champ de saisie « nombre de minutes » (chaîne avec masque
de saisie 99).

Ensuite, on bricole comme on veut ce qui est entré dans chaque champ
(tests de fourchettes, de cohérence, calculs, etc.).

[*] J'avais écrit à l'époque une librairie de fonctions de gestion des
dates et heures en C ANSI, avec prise en compte des années
bissextiles et tout :)

--
Eric
Avatar
digging
> - un champ de saisie « nombre d'heures » (chaîne avec masque
de saisie 999) ;
- un champ de saisie « nombre de minutes » (chaîne avec masque
de saisie 99).




Soit tu déclares un champ texte de saisie 9999.99 et tu passes par les
extractions et conversions en t'appuyant sur la conversion de/vers la base
sexagésimale (la base 60 quoi !)
Dans tous les cas les heures sont gérées en décimal pour la paie, et les
minutes sont converties de la base60 vers la base décimale.
Avatar
Eric Demeester
dans (in) fr.comp.developpement.agl.windev, "digging"
ecrivait (wrote) :

Bonsoir,

Dans tous les cas les heures sont gérées en décimal pour la paie, et les
minutes sont converties de la base60 vers la base décimale.



C'est pile-poil la base de la manoeuvre. Lourd et « agricole », mais
efficace dans tous les cas, et indépendant du langagde de
programmation... :)

--
Eric