Bonjour,
J’aime bien ton idée bravo.
Jeedom utilise la fonction php [strtotime ] qui permet les formats relatifs.
Il faut essayer avec statisticsBetween, c’est glissant et avec le paramètre sum, ça devrait faire la somme des valeurs
par ex pour l’année par exemple
statisticsBetween(#[Tag du Themostat]#,sum,first day of this year midnight,now)
Bonjour,
Sur l’écriture proprement dit tu peux la simplifié en utilisant - duration(#[Séjour][Thermostat Séjour][Chauffage]#,1,-24 hour). Période de temps à modifier.
Dans les deux cas, cela te renvoie des minutes.
Injecte ce temps dans un Tag que je vais appeler « mesure »
Heures : Tu peux calculer le nombre d’heures par une conversion (pour perdre les minutes), (que l’on va mettre dans un Tag appelé « Heure ») soit :
_____tag(heure)= floor(tag(mesure)/60)
Minutes: Tu peux en déduire le nombre de minutes, qui est ton temps mesuré moins le nombre d’heure converti en minutes, soit
_____tag(minute)= tag(mesure)-(tag(heure)*60)
Ainsi, à cette instant tu as, par exemple : #mesure# = 75 #heure# = 1 #minutes# = 15
On peut maintenant créer un nombre au format heure:minute , dans l’exemple: 0115. Soit:
____tag(mesureHM)=tag(heure)*100 + tag(minute)
Il faut ensuite mettre au format HH h MM pour qu’il soit joli, en utilisant la commande formatTime(), soit :
____tag((mesureFormat)=formatTime(tag(mesureHM))
Si tu veux cela dans un « virtuel », maintenant que tu as compris les étapes, tu peux:
créer dans ton virtuel des valeurs intermédiaires / à la place des tag
ou
faire tout ça en UNE formule !! (qui va être très longue…)
(Pour la voire plus facilement, écris la dans un fichier texte, puis copié / collé)
Et voila !
Etapes (si tu veux te vérifier avec un scénario de test - Ce que je t’invite vivement à faire…):