Coup de main sur fonction statisticsBetween

Bonsoir,
Je sèche sur une fonction de scénario, aussi je serais preneur d’un petit coup de main.
Voilà, je stocke dans une info de virtuel la quantité de pluie journalière de la veille, cette info s’appelle de façon originale veille et les données stockées dans l’historique ont l’air toutes correctes. Je les ai parcourues une à une depuis le mois d’octobre.

Lorsque je fais :
statisticsBetween(#[Environnement][Cumul Pluie][Veille]#,sum,first of january midnight,now)
J’ai bien le résultat du calcul depuis le début de l’année.

En revanche, lorsque je fais :
statisticsBetween(#[Environnement][Cumul Pluie][Veille]#,sum,first of this month midnight,now)

J’ai toujours le résultat du calcul depuis le début de l’année.

Si vous la voyiez, pourriez-vous me dire quelle est mon erreur ?

Par avance, merci.

Bonsoir,

ca ne serai pas plutot first day of this month midnight ?

1 « J'aime »

Gagné, bien vu.

Pour la semaine, je mets :
statisticsBetween(#[Environnement][Cumul Pluie][Veille]#,sum,this week midnight,now)

Pour le trimestre, je repère le mois et en fonction je mets (pour le dernier trimestre) :
statisticsBetween(#[Environnement][Cumul Pluie][Veille]#,sum,first of october midnight,now)

Le semestre, après repérage du mois (dernier semestre) :
statisticsBetween(#[Environnement][Cumul Pluie][Veille]#,sum,first of july midnight,now)

Et enfin, pour l’année :
statisticsBetween(#[Environnement][Cumul Pluie][Veille]#,sum,first of january midnight,now)

Tu ne vois pas d’autres erreurs par hasard ?

Salut, tu dis que tu stockes ton info dans un virtuel, est ce que tu le rafraichis bien ?

Pour savoir si le souci vient du virtuel ou de ta formule est ce que le résultat est le même lorsque tu passe via le testeur d’expressions ?

Yep, testé également avec le testeur d’expression

les même :rofl:
first of october midnightfirst day of october midnight
first of july midnightfirst day of july midnight
first of january midnightfirst day of january midnight

Moyen simple de tester, c’est de mettre dans le testeur d’expression comme ceci :

date('d M Y H:i:s', strtotime('first of january midnight')); → renverra pas de date
date('d M Y H:i:s', strtotime('first day of january midnight')); → renverra 01 Jan 2023 00:00:00

1 « J'aime »

J’étais déjà en train de les modifier comme ça au moment où tu m’as répondu.
Effectivement, c’est comme ça qu’il faut l’écrire.
Merci de ton aide et bonne fin de soirée.

Bonjour
Pour info / simplifier :
(De tête / pas test sur le champ)
-7 / -30 / -90 day fonctionne (pour semaine / mois / trimestre) (il faut bien mettre le « moins »)
Je pourrais vérifier ce soir si tu veux.

Bonjour,
Je n’ai pas compris ton propos, peux-tu le préciser ?

Un exemple plutot qu’un long discourt :slight_smile:

@@ Somme sur :
1 jour : statistics(#[Salle à manger][Cpt-TH-LCD][T°]#,sum,-1 day)
1 semaine : statistics(#[Salle à manger][Cpt-TH-LCD][T°]#,sum,-7 day)
1 mois : statistics(#[Salle à manger][Cpt-TH-LCD][T°]#,sum,-31 day)
-----
1 jour : statisticsBetween(#[Salle à manger][Cpt-TH-LCD][T°]#,sum,-1 day,now)
1 semaine : statisticsBetween(#[Salle à manger][Cpt-TH-LCD][T°]#,sum,-7 day,now)
1 mois : statisticsBetween(#[Salle à manger][Cpt-TH-LCD][T°]#,sum,-31 day,now)

Cela donne :

[2023-11-21 22:30:57][SCENARIO] Start : Scenario lance manuellement.
[2023-11-21 22:30:57][SCENARIO] Exécution du sous-élément de type [action] : action
[2023-11-21 22:30:57][SCENARIO] Log : @@ Somme sur :
1 jour : 83.00
1 semaine : 2096.00
1 mois : 9672.60
-----
1 jour : 83.00
1 semaine : 2096.00
1 mois : 9672.60
[2023-11-21 22:30:57][SCENARIO] Fin correcte du scénario

J’utilise jamais sum, mais ça à l’air cohérent !
Tu me diras si ça fonctionne ?!

Bonne soirée

Bonjour,
Je te remercie mais ça ne correspond pas vraiment à mon besoin qui n’est pas de faire des stats sur un nombre de jours glissants mais depuis un jour précis (dernier lundi, 1er du mois, du trimestre, du semestre et de l’année).
Néanmoins, je garde.
Bonne journée