Comparaison durée temps dans un scenario

Bonjour,
J’ai un petit cas qui me prend la tête à vous soumettre pour avoir vos idées.
Dans un scénario je compare 2 durées qui concernent le temps de filtration de la piscine.
je fais :
gmdate('H\\hi',variable(DuréeFiltrationTemp)*3600 - #[PISCINE][Surveillance Pompe piscine ZW][Temps Actif Total]#)

variable(DuréeFiltrationTemp) est la durée idéale par rapport à la T° calculée auparavant.
#[PISCINE][Surveillance Pompe piscine ZW][Temps Actif Total]# est la durée cumulée du temps de filtration sur la journée. Que ce soit en un fois ou en plusieurs démarrage arrêt.
Je compare ces valeurs pour faire tourner la filtration en HC la nuit si le solaire n’a pas suffisamment produit pour atteindre le temps de filtration idéale…

Pour essayer de faire simple à expliquer je vais prendre des valeurs.
Si je fais :
gmdate(‹ H\hi ›,12000 - 10000) le résultat est 00h33 il me reste donc 33 minutes de filtration à faire en heure creuse en complément au solaire de la journée.
Par contre si j’ai fais tourner en marche forcée pour une raison ou une autre la filtration plus que la durée idéale, du coup je vais avoir :
gmdate(‹ H\hi ›,12000 - 18000) et le résultat est 22h20 ce qui m’embête car du coup la piscine va tourner en HC cette nuit alors que ce n’est pas nécessaire.

Ma question, comment puis-je écrire mon expression gmdate(‹ H\hi ›,12000 - 18000) pour qu’elle me rapporte 00h00 si ma comparaison est un résultat négatif ?

J’espère que mes explications sont claires
Merci

Salut,

Pourquoi ne pas faire simplement une petite comparaison avant pour savoir si la différence est négative et définir la durée en fonction de. Si < 0 alors 0 minutes sinon gmdate(…).

Hello, idem que @Bison ,
Compare avant :
Si variable… > [temps actif total] alors gmdate…

Je voulais essayer de faire en une seule formule mais ce n’est peut-être pas possible donc oui j’avais envisagé en solution de scinder en 2. Comparer avant et transformer en H après.
J’essaie toujours de faire seul pour apprendre avant de demander, et là avant de renoncer je demande car je n’ai pas de compétence particulière.
Merci

gmdate('H\hi', max(12000, 18000) - 18000)

1 « J'aime »

Super :wave:
Je ne vais pas te dire que ça fonctionne très bien car tu le sais déjà :grinning_face_with_smiling_eyes:
Mais merci c’est la solution qu’il me fallait, je vais aller lire de la littérature pour la comprendre pour ma culture générale.
Je coche comme solution et je vous remercie tous.
Bien cordialement

1 « J'aime »

Ce sujet a été automatiquement fermé après 24 heures suivant le dernier commentaire. Aucune réponse n’est permise dorénavant.