Problème quand #time#=0400 ou 0500

Bonjour, j’ai un scénario qui évalue la température de consigne en fonction de l’heure.

$time = (int)$sc->getTag('time');

if (($time > 2345) || ($time < 0545)) { $TPConsigne = $TPNuit; }

Toutes mes autres conditions (et celle-ci) fonctionnent pour n’importe quelle heure de la journée, sauf quand il est 4h00 et et jusque 5h00 (#time#=0400)

A 5h00, c’est if (($time > 0715)…) qui est « true ».

Une explication ? Merci

Bonjour,

Je vous invite à le ceci : Comment nous aider à vous aider - ou Comment poser une bonne question?

Et donc fournir un log.
Pourquoi ne pas rester sur des scénarios standard aussi au lieu de bloc code ?

Salut,

Pas testé mais si tu enlèves le premier 0 pour les heures à 1 chiffre ?
Ex : 545

Bonjour, mon scénario est un bloc code. Il n’y a pas de log. Sauf si moi-même je fais un $sc->log()
En l’occurence, il n’y a rien à loguer ici à part que ce problème survient quand il est 4h00 et 5h00.

Quant au choix du bloc code, j’ai pris l’habitude en lua avec la HC3, et je programme depuis pas mal d’année. Je préfère tout centraliser (gestion chauffage, thermostat, calendrier) sous 1 seul scénario en bloc code qu’autrement.

Une autre raison pratique est que je fonctionne avec des têtes thermostatiques qui ouvrent ou non l’arrivée d’eau chaude via une nourrice. Et avec des enfants présents ou pas lors de certaines journées. Les conditions à mettre en place sont, pour moi, bien plus simples à gérer en bloc code.

Ah merci ! je crois que tu as résolu mon problème.
Donc à priori 0400 est différent de 400. Pourtant c’est bien un (int).
Je vais check le reste de mon scénario.

:+1: tu pourras passer à résolu en sélectionnant ma réponse comme résolution

0400 n’est pas un int :wink:

Et donc oui tu peux mettre des logs toi même

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