bokub / ha-linky

📊 Home Assistant add-on for Linky smart meters
MIT License
207 stars 10 forks source link

Suivi des coûts #2

Open webjib opened 1 year ago

webjib commented 1 year ago

Tout d'abord, bravo pour cette extension qui marche parfaitement bien !

Dans le paramètre du tableau de bord Energie, quand on choisit la source de données Linky, on ne peut pas choisir de suivre les coûts, notamment en indiquant un coût statique. Tu crois que c'est facile à ajouter de ton coté ?

Capture d'écran 2023-09-04 à 18 28 55
bokub commented 1 year ago

Effectivement j'ai rencontré ce problème, mais c’est une limitation de Home Assistant, qui interdit de paramétrer un prix sur des statistiques « externes » (c’est à dire non créées par un sensor).

J’ai essayé de trouver plus d’informations et / ou des moyens de contourner cette limitation mais c’est assez difficile de trouver de la documentation. J'ai également demandé des infos ici, puis ici puis ici, mais sans succès pour l'instant.

Je l'aisse l'issue ouverte tant que ce problème n'est pas résolu

webjib commented 1 year ago

Merci pour ta réactivité !

Jacquiers687 commented 11 months ago

Bonjour à tous, petite réponse @bokub , je crois avoir trouvé une issue, au fait que les choix 3 et 4 soit grisés. Perso ca me fait pareil, chez moi lorsque j'ouvre l'ecran de configuration directement via l'interface HA, mais ce matin que me suis penché dans la doc ENERGY ; et en surfant ca te propose un lien pour ouvrir "ta" page de config de ta gestion d'energie, et comme par miracle ; les choix 3 et 4 sont accessibles. image

webjib commented 11 months ago

Pour moi ton astuce ne fonctionne pas.

@bokub : penses tu qu’il serait envisageable d’exposer les données comme un sensor à place (ou en plus). Car actuellement les données ne sont exploitables que dans le tableau de bord Énergie, et ça pourrait résoudre ce problème de suivi des coûts.

SIM0N-F commented 11 months ago

Effectivement @webjib cette réponse semble indiqué cette possibilité. @bokub Tu pense que ça serait possible d'avoir ce capteur en + de la statistic ? Un peu à l'image de l'addon MyEnedis par exemple. image

bokub commented 11 months ago

Oui effectivement, il serait possible de sauvegarder le coût de chaque journée ou demi-heure dans une entité à part, mais je me demande comment faire pour que ce soit configurable facilement par tous les utilisateurs sachant qu'il faut gérer:

J'ai réfléchi à un système de template à fournir à l'addon et qui calculerait le prix pour une plage horaire donnée. ça pourrait marcher pour tout le monde mais j'ai peur que ce soit une usine à gaz et j'ai pas eu le temps de creuser plus. L'autre solution serait de ne pas gérer les tempo, mais c'est pareil je n'ai pas trouvé de format de config qui soit élégant. Je suis preneur d'idées / suggestions si vous en avez

SIM0N-F commented 11 months ago

Bonjour @bokub, coté MyEnedis ils fournissent un panel de conf qui prend en compte ces paramètres: image

Le paramétrage des plages horaires HC n'est pas des plus sympa en terme d'UX mais ça reste facilement accessible je trouve.

Smokwithme commented 9 months ago

Bonjour, Avez vous trouvé une solution pour fixer un prix au moins pour l'abonnement de base. J'ai tenté de créer un capteur avec la valeur en state mais même si je peux ajouter l'entité dans le paramètre de cout, le calcul ne se fait pas. Merci d'avance

Jacquiers687 commented 9 months ago

Bonjour oui j'ai compris comment cela fonctionnait hier. SI on récupere les données du linky via une intégration, ca ne fonctionnera jamais. Moi j'ai refait des sensor, de type energy, que je met à jour toutes les 30 min. A coté de celà j'ai fait un template pour le prix, et quand je les integre tous les deux dans HA, et ca fonctionne !

template:
  - sensor: 
      - name: "Prix du Kwh en euros"
        state_class: 'measurement'
        unit_of_measurement: "EUR/kWh"
        unique_id: 'prix_kwh_bleu'
        icon: mdi:currency-eur 
        state: "{% if ( ((now().strftime('%H:%M') >= '01:30') and (now().strftime('%H:%M') < '07:30'))or((now().strftime('%H:%M') >= '12:30') and (now().strftime('%H:%M') < '14:30')) ) -%} {{states.input_number.prix_heure_creuse_kwh.state | float(default=0)}} {%- else -%} {{states.input_number.prix_heure_pleine_kwh.state | float(default=0)}} {%- endif %} "     
Smokwithme commented 9 months ago

Bonjour oui j'ai compris comment cela fonctionnait hier. SI on récupere les données du linky via une intégration, ca ne fonctionnera jamais. Moi j'ai refait des sensor, de type energy, que je met à jour toutes les 30 min. A coté de celà j'ai fait un template pour le prix, et quand je les integre tous les deux dans HA, et ca fonctionne !

template:
  - sensor: 
      - name: "Prix du Kwh en euros"
        state_class: 'measurement'
        unit_of_measurement: "EUR/kWh"
        unique_id: 'prix_kwh_bleu'
        icon: mdi:currency-eur 
        state: "{% if ( ((now().strftime('%H:%M') >= '01:30') and (now().strftime('%H:%M') < '07:30'))or((now().strftime('%H:%M') >= '12:30') and (now().strftime('%H:%M') < '14:30')) ) -%} {{states.input_number.prix_heure_creuse_kwh.state | float(default=0)}} {%- else -%} {{states.input_number.prix_heure_pleine_kwh.state | float(default=0)}} {%- endif %} "     

Super intéressant ça ! Et tu as fait quoi comme sensor pour récupérer tes data d'énergie ??

Jacquiers687 commented 9 months ago

Moi j'ai abandonné les données de ENEDIS j'ai acheté des ShellyEM, ce sont des petits compteurs d'énergie, j'en ai mis un à l'entrée de ma maison, un autre sur la pompe à chaleur, un autre sur le chauffe-eau, et un autre sur mon atelier, et par soustraction je connais le reste de ma maison. Ces capteurs proposent directement l'energie, et la puissance. On a la possibilité via les 'utility-meter" de calculer l'energie dans HA, en fonction de la puissance. moi j'ai préféré lire directement le compteur d'energie des shellys parceque le résultat était plus précis. Ensuite en fonction de heures creuses et heures pleines je stocke cela dans des input-number séparée, et l'affaire est jouée. Il faut juste par la suite transformer les input-number en sensor via une template pour qu'ils soient compatibles avec la carte energie et ca roule. voilà voilà.... En fait, on est obligé de refaire tout celà , parceque la gestion de l'energie calcule le prix au moment ou tu entres les points dans la base de donnée > je trouve la gestion de l'energie un peu opaque, il faut tout faire par tatonnement.

Smokwithme commented 9 months ago

Merci beaucoup pour ton retour. Oui je confirme que c'est très opaque et pas facile a prendre en main.

Jacquiers687 commented 9 months ago

Bonsoir, Encore une question : quelle intégration as tu toi? il y en a plusieurs un peu courantes ici, et perso je ne savais pas laquelle choisir ! Avant de décider de tout refaire moi même.

Smokwithme commented 9 months ago

Bonsoir, Encore une question : quelle intégration as tu toi? il y en a plusieurs un peu courantes ici, et perso je ne savais pas laquelle choisir ! Avant de décider de tout refaire moi même.

Salut, j'ai l'intégration de ce repro ici HA-LINKY, j'ai fait le test d'ajouter un sensor :

- sensor:
      - name: prix_elec
        state_class: total
        state: 0.2276

J'arrive à ajouter ce sensor dans la config du pannel energie mais le calcul ne se fait pas.

Jacquiers687 commented 9 months ago

re j'ai eu le meme soucis que toi, et j ai finalement abandonné. En plus j'ai deux tarifs (HP et HC) mais ca ne change pas grand chose. Perso, je pense que à chaque fois que ton sensor est modifié, le systeme y associe une valeur pour le prix (valeur cachée) et qu'ensuite, il en fait la somme pour afficher. Lorque les intégrations importent les données de ENEDIS, l'importation se fait en une fois, à chaque matin, mais que pour les valeurs d'energie et la collone prix n'est pas renseignée dans cet import, du coup ca ne fonctionne pas. Moi ca ne fait que deux jours que j'ai refait mes sensors "perso", ca compte bien les prix, mais le résultat n'est encore pas tres juste, il va aussi falloir que je comprenne pourquoi !! image

pihomeserver commented 7 months ago

Pour Tempo j'ai installé RTE Tempo Tout est bien récupéré et le prix en cours est correct. Il manque "juste" la visibilité du sensor dans le tableau d'énergie pour calculer le prix de la consommation

vasilvestre commented 6 months ago

De mon côté j'utilise Direct énergie et sans HC/HP. Je n'arrive pas à régler la consommation pour l'onglet énergie.. pas moyen d'utiliser Tempo donc. Quelqu'un aurait une piste ?

J'ai tenté de multipler le prix du kwh avec la consommation totale mais la donnée n'existe pas.

Jacquiers687 commented 6 months ago

Hello Pour moi, ce n'est pas possible de récuperer les prix que l'on paye en automatique, puisqu'il faudrait le faire chez ton fournisseur, et que ca dépend de taxes locales, de la TVA, etc. Moi j'ai programmé un sensor qui le fait, avec des valeurs en euro/kw (constantes) pour les différentes plages...mais ca ne prend pas en compte le coup de l'abonnement

vasilvestre commented 6 months ago

Hello Pour moi, ce n'est pas possible de récuperer les prix que l'on paye en automatique, puisqu'il faudrait le faire chez ton fournisseur, et que ca dépend de taxes locales, de la TVA, etc. Moi j'ai programmé un sensor qui le fait, avec des valeurs en euro/kw (constantes) pour les différentes plages...mais ca ne prend pas en compte le coup de l'abonnement

Et comment tu utilises la consommation remontée par ha-linky dans ces calculs ? Le sensor "linky consumption" n'est pas reconnu dans les templates custom.

Jacquiers687 commented 6 months ago

En effet tu as raison, choisir linky efface automatiquement le sensor "prix" ; moi j'ai remis des tores pour mesurer la puissance à l'entrée de ma maison, reliés à un ShellyEM et j'ai tout refait ma conso moi-meme ; c'est dommage de tout devoir refaire, quand ca existe déja à 80%

vasilvestre commented 6 months ago

Je garde espoir que Home assistant soit + souple sur la donnée externe ou que ha-linky trouve une solution magique. Surtout que je suis en tarif fixe.

Smokwithme commented 6 months ago

Je garde espoir que Home assistant soit + souple sur la donnée externe ou que ha-linky trouve une solution magique. Surtout que je suis en tarif fixe.

Moi j'utilise myelectricaldata et je récupère ma consommation et le coût. Ce n'est pas dans le panel énergie mais la carte dans le dashboard est largement suffisante pour le coup d'oeil quotidien. Et quand je veux regarder mes stats je regarde l'onglet de myelectricaldata

cyril94440 commented 5 months ago

Oui effectivement, il serait possible de sauvegarder le coût de chaque journée ou demi-heure dans une entité à part, mais je me demande comment faire pour que ce soit configurable facilement par tous les utilisateurs sachant qu'il faut gérer:

  • Les tarifs base (facile)
  • Les HP / HC sachant que les plages horaires dépendent de chaque contrat
  • Les tarifs tempo (compliqué, car le tarif serait stocké par une entité gérée par l'utilisateur)

J'ai réfléchi à un système de template à fournir à l'addon et qui calculerait le prix pour une plage horaire donnée. ça pourrait marcher pour tout le monde mais j'ai peur que ce soit une usine à gaz et j'ai pas eu le temps de creuser plus. L'autre solution serait de ne pas gérer les tempo, mais c'est pareil je n'ai pas trouvé de format de config qui soit élégant. Je suis preneur d'idées / suggestions si vous en avez

Très facile quel que soit la config, à partir du moment où on a un sensor qui suit le prix actuel et un sensor qui suit la consommation. Avec l'extension RTE Tempo, on a bien un sensor qui suit le prix actuel (après configuration), donc si cette extension exposait également un sensor, ce serait magique !

Zeikotsu commented 2 months ago

Des nouvelles sur cette demande?

bokub commented 2 months ago

Ça arrive mais je suis en vacances donc ça prend un peu de temps

Zeikotsu commented 2 months ago

Il n'y a aucune urgence, merci pour ton travail déjà et profite bien de tes vacances !

bokub commented 2 months ago

Bonjour à tous ceux qui suivent cette issue et qui réclament le calcul des coûts depuis longtemps

Je viens de rajouter la fonctionnalité à la version 1.5.0 de mon add-on :partying_face: Je vous laisse effectuer la mise à jour et me faire vos retours dans les jours à venir !

Bonne journée

Zeikotsu commented 2 months ago

Tu es au top !!!

pilou33 commented 2 months ago

Top pour la consommation. Penses tu possible de faire pareil pour la production ?

didi31 commented 2 months ago

ça fonctionne nickel! Merci beaucoup Du coup il me vient une idée pour compléter la demande de @pilou33 mais peut-être suis-je hors sujet. Les données linky n'étant pas disponibles pour le jour en cours serait-il possible de les lire sur un transformateur de courant (CT). Les données facturées Linky sont légèrement différentes des lectures CT 😔 A priori, je dirais qu'il faut créer 2 variables contenant le nom des entités qui mesurent la consommation et la production dans la conf Intégrer les données des CT aux statistiques Linky Lors de la mise à jour Linky, remplacer les données issues des CT par celles de Linky

Ulyxxe commented 2 months ago

Bonjour, merci pour cette nouveauté tant attendue. Vous évoquer une remise à zéro pour avoir le cout des consommations précédemment importées, comment faire ? bonne semaine

Alexterieur007 commented 2 months ago

J'ai configuer mon fichier mais je n'arrive pas à ajouter la visibilité sur les couts.

didi31 commented 2 months ago

Bonjour, merci pour cette nouveauté tant attendue. Vous évoquer une remise à zéro pour avoir le cout des consommations précédemment importées, comment faire ? bonne semaine

@Ulyxxe Dans l'onglet configuration du module, remplacer 'sync' par 'reset'. Une fois relancé, revenir à l'onglet et remettre Sync.

didi31 commented 2 months ago

J'ai configuer mon fichier mais je n'arrive pas à ajouter la visibilité sur les couts.

@Alexterieur007 Après remise à 0, il doit y avoir une entité Consommation Linky (costs). Est-ce le cas?

Alexterieur007 commented 2 months ago

@didi31 Effectivement, en suivant le reset c'est apparu. Par contre, je pense qu'il y a un soucis sur le graphique en fonction de la date la plus récente. ici 18/07 dans la capture image

Et tout ce qui se trouve avant le 18/07 n'est plus réparti sur la journée. image

Le 18/07 c'est ok image

pilou33 commented 2 months ago

Je n'ai pas ce problème : image

alexandrebaldinho commented 2 months ago

Est-ce que tu peux vérifier sur ta date d'import des couts et le graphique à J-1 ? image

bokub commented 2 months ago

@Alexterieur007 Oui c'est normal, je t'invite à lire la documentation, tout y est expliqué:

  • Pour les dates récentes (moins de 7 jours), HA Linky essaiera de récupérer en priorité des données par demi-heure
  • Pour les dates plus anciennes, HA Linky récupèrera seulement des données quotidiennes. Vous verrez alors une seule grande barre entre 0h et 1h du matin sur votre tableau de bord d'énergie si vous affichez le graphique détaillé d'une telle journée.

Lors de l'initialisation, HA Linky télécharge jusqu'à 1 an de données quotidiennes via Conso API. Si vous souhaitez un historique plus long ainsi qu'une précision horaire, vous pouvez importer un fichier CSV à partir duquel HA Linky pourra extraire les données.

bokub commented 2 months ago

@Ulyxxe il y a un paragraphe qui s'appelle "Remise à zéro" dans la documentation, honnêtement je pense que tu peux y trouver ta réponse en toute autonomie

alexandrebaldinho commented 2 months ago

Merci @bokub je pense qu'on ne se comprends pas. J'indique juste qu'il y a eu un impact sur les données précédentes (récentes) lors de l'ajout du calcul des couts. Là où je pouvais voir la journée du 17/07 heure par heure elle est maintenant représentée par un baton.

Dans tout les cas vous faite du super job.

bokub commented 2 months ago

il y a eu un impact sur les données précédentes (récentes) lors de l'ajout du calcul des couts

Non, c'est impossible, les données importées ne peuvent pas être modifiées.

La seule possibilité, c'est que tu aies effacé toutes des données en demandant une remise à zéro, puis relancé une synchronisation. Dans ce cas, oui, seuls les 7 derniers jours sont importés en mode "heure par heure", comme expliqué dans la documentation et mon commentaire précédent.

didi31 commented 2 months ago

@Alexterieur007 Importe les données enedis csv si tu veux retrouver les anciennes valeurs.

alexandrebaldinho commented 2 months ago

Oui j'ai fait une remise à zéro puisqu'il fallait passer le paramètre à "reset" puis redémarrer le service pour le passer à "sync". Je vais explorer le réimport des CSV... Merci

ernestcoudur commented 2 months ago

Bonsoir ! Merci pour tout le boulot j'utilise la version standalone en docker ça a l'air de fonctionner nickel. J'aimerais y intégrer les coûts et je vois qu'il est possible de le faire dans le fichier options.json, serait-il possible d'avoir un exemple sur la façon de remplir les coûts dans ce fichier ? Sinon sur la version standalone les options "entité prix actuel" et "prix statique" sont encore grisées. Merci pour tout le travail

didi31 commented 2 months ago

Top pour la consommation. Penses tu possible de faire pareil pour la production ?

@pilou33 Si quelqu'un est intéressé et sur le même principe, j'ai créé une entrée dans la table statistics_meta ainsi qu'une requête à lancer manuellement avec le module complémentaire SQLite web pour mettre à jour les revenus de production. ça fonctionne chez moi. Correction: Le lancement automatique est possible en utilisant les triggers de SQLite (voir plus bas).

pilou33 commented 2 months ago

Top pour la consommation. Penses tu possible de faire pareil pour la production ?

@pilou33 Si quelqu'un est intéressé et sur le même principe, j'ai créé une entrée dans la table statistics_meta ainsi qu'une requête à lancer manuellement avec le module complémentaire SQLite web (je n'ai pas trouvé comment faire pour la lancer tous les jours automatiquement) pour mettre à jour les revenus de production. ça fonctionne chez moi.

Hello, Oui intéressé mais avec la procédure pas à pas :-) si possible. D'avance merci

didi31 commented 2 months ago

Tout d'abord, il faut installer le module complémentaire Sqlite web Faire une sauvegarde (On ne sait jamais) Lancer SQLite web et entrer la requête ci-dessous dans la case Query: ou NOM_PROD_REVENU= linky_prod: + prm + _revenu (ex: linky_prod:1234567890123_revenu)

INSERT INTO statistics_meta (statistic_id, source, unit_of_measurement, has_mean, has_sum, name) VALUES ( "NOM_PROD_REVENU", "linky_prod", "€", 0, 1, "Production Linky (revenus)" );

Cette requête n'est à faire qu'une seule fois.

De la même manière, pour créer ou ajouter les données de revenu il faut lancer périodiquement la requête ci-dessous: ou:

INSERT INTO statistics (created,START,mean,MIN,MAX,last_reset,state,SUM,metadata_id,created_ts,start_ts,last_reset_ts) SELECT s.created, s.start, s.mean, s.min, s.max, s.last_reset, round(s.state * 0.1301 / 1000,3), round(s.sum * 0.1301 / 1000,3), (SELECT ID FROM statistics_meta WHERE statistic_id = 'NOM_PROD_REVENU'), s.created_ts, s.start_ts,s. last_reset_ts FROM statistics as s, statistics_meta as m WHERE s.metadata_id = m.id AND m.statistic_id = 'NOM_PRODUCTION' AND s.start_ts NOT IN ( SELECT stat.start_ts FROM statistics as stat, statistics_meta stat_m WHERE stat.metadata_id = stat_m.id AND stat_m.statistic_id = 'NOM_PROD_REVENU' ) ; On peut aussi intégrer différents tarifs en fonction de la date en modifiant la requête mais je ne sais pas si c'est utile.

Si on veut tout supprimer et revenir comme avant: ou NOM_PROD_REVENU= linky_prod: + prm + _revenu (ex: linky_prod:1234567890123_revenu)

DELETE FROM statistics_meta WHERE statistic_id = 'NOM_PROD_REVENU'

Il suffit ensuite de la même manière que pour la consommation ajouter cette entité qui suit le total de l'argent reçu dans la production. image image

pilou33 commented 2 months ago

Tout d'abord, il faut installer le module complémentaire Sqlite web Faire une sauvegarde (On ne sait jamais) Lancer SQLite web et entrer la requête ci-dessous dans la case Query: ou NOM_PROD_REVENU= linky_prod: + prm + _revenu (ex: linky_prod:1234567890123_revenu)

INSERT INTO statistics_meta (statistic_id, source, unit_of_measurement, has_mean, has_sum, name) VALUES ( "NOM_PROD_REVENU", "linky_prod", "€", 0, 1, "Production Linky (revenus)" );

Cette requête n'est à faire qu'une seule fois.

De la même manière, pour créer ou ajouter les données de revenu il faut lancer périodiquement la requête ci-dessous: ou:

  • 0.1301 est le tarif par kwh
  • NOM_PROD_REVENU= linky_prod: + prm + _revenu (ex: linky_prod:1234567890123_revenu)
  • NOM_PRODUCTION = linky_prod: + prm (ex: linky_prod:1234567890123)

INSERT INTO statistics (created,START,mean,MIN,MAX,last_reset,state,SUM,metadata_id,created_ts,start_ts,last_reset_ts) SELECT s.created, s.start, s.mean, s.min, s.max, s.last_reset, round(s.state * 0.1301 / 1000,3), round(s.sum * 0.1301 / 1000,3), (SELECT ID FROM statistics_meta WHERE statistic_id = 'NOM_PROD_REVENU'), s.created_ts, s.start_ts,s. last_reset_ts FROM statistics as s, statistics_meta as m WHERE s.metadata_id = m.id AND m.statistic_id = 'NOM_PRODUCTION' AND s.start_ts NOT IN ( SELECT stat.start_ts FROM statistics as stat, statistics_meta stat_m WHERE stat.metadata_id = stat_m.id AND stat_m.statistic_id = 'NOM_PROD_REVENU' ) ; On peut aussi intégrer différents tarifs en fonction de la date en modifiant la requête mais je ne sais pas si c'est utile.

Si on veut tout supprimer et revenir comme avant: ou NOM_PROD_REVENU= linky_prod: + prm + _revenu (ex: linky_prod:1234567890123_revenu)

DELETE FROM statistics_meta WHERE statistic_id = 'NOM_PROD_REVENU'

Il suffit ensuite de la même manière que pour la consommation ajouter cette entité qui suit le total de l'argent reçu dans la production. image image

Merci J'essaies dès que possible

bokub commented 2 months ago

@ernestcoudur

J'aimerais y intégrer les coûts et je vois qu'il est possible de le faire dans le fichier options.json, serait-il possible d'avoir un exemple sur la façon de remplir les coûts dans ce fichier ?

Y'a aucune différence, tu dois juste ajouter ta liste de tarifs dans le tableau costs qui est vide dans l'exemple de la documentation

Sinon sur la version standalone les options "entité prix actuel" et "prix statique" sont encore grisées.

Oui, si tu lis la documentation tu verras que le prix s'ajoute en choisissant Utiliser une entité de suivi des coûts totaux, les autres options ne sont pas supportées par Home Assistant comme expliqué dans les premiers messages de cette issue

pilou33 commented 2 months ago

Tout d'abord, il faut installer le module complémentaire Sqlite web Faire une sauvegarde (On ne sait jamais) Lancer SQLite web et entrer la requête ci-dessous dans la case Query: ou NOM_PROD_REVENU= linky_prod: + prm + _revenu (ex: linky_prod:1234567890123_revenu)

INSERT INTO statistics_meta (statistic_id, source, unit_of_measurement, has_mean, has_sum, name) VALUES ( "NOM_PROD_REVENU", "linky_prod", "€", 0, 1, "Production Linky (revenus)" );

Cette requête n'est à faire qu'une seule fois.

De la même manière, pour créer ou ajouter les données de revenu il faut lancer périodiquement la requête ci-dessous: ou:

  • 0.1301 est le tarif par kwh
  • NOM_PROD_REVENU= linky_prod: + prm + _revenu (ex: linky_prod:1234567890123_revenu)
  • NOM_PRODUCTION = linky_prod: + prm (ex: linky_prod:1234567890123)

INSERT INTO statistics (created,START,mean,MIN,MAX,last_reset,state,SUM,metadata_id,created_ts,start_ts,last_reset_ts) SELECT s.created, s.start, s.mean, s.min, s.max, s.last_reset, round(s.state * 0.1301 / 1000,3), round(s.sum * 0.1301 / 1000,3), (SELECT ID FROM statistics_meta WHERE statistic_id = 'NOM_PROD_REVENU'), s.created_ts, s.start_ts,s. last_reset_ts FROM statistics as s, statistics_meta as m WHERE s.metadata_id = m.id AND m.statistic_id = 'NOM_PRODUCTION' AND s.start_ts NOT IN ( SELECT stat.start_ts FROM statistics as stat, statistics_meta stat_m WHERE stat.metadata_id = stat_m.id AND stat_m.statistic_id = 'NOM_PROD_REVENU' ) ; On peut aussi intégrer différents tarifs en fonction de la date en modifiant la requête mais je ne sais pas si c'est utile.

Si on veut tout supprimer et revenir comme avant: ou NOM_PROD_REVENU= linky_prod: + prm + _revenu (ex: linky_prod:1234567890123_revenu)

DELETE FROM statistics_meta WHERE statistic_id = 'NOM_PROD_REVENU'

Il suffit ensuite de la même manière que pour la consommation ajouter cette entité qui suit le total de l'argent reçu dans la production. image image

Merci, ça fonctionne. Mais comme tu le dis dommage de devoir le lancer à la main périodiquement.