Bonjour,
est il possible de multiplier le last_month, current_ month, current_year par un coût unitaire en € pour connaitre le coût total ?
Bonjour,
est il possible de multiplier le last_month, current_ month, current_year par un coût unitaire en € pour connaitre le coût total ?
En prenant exemple du dernier code pour diviser par 1000, il suffit d’ajouter une multiplication…
enedis_last_month_cost:
friendly_name: "Enedis Last month €"
unit_of_measurement: '€'
value_template: >
{{ ( (state_attr('sensor.myenedis_XXX', 'last_month') |float)*0.001*(states('input_number.prix_electricite')|float) ) |round(2) }}
Avec un input_number.electricite
qui contient le prix de l’électricité…
Euh oui d’accord comment ?
n’hésites pas si tu bloques
Merci pour cette info. J’avais le même problème que @sas ! La conso de la semaine dernière était bien multipliée par 1000. Depuis grace à ton astuce le problème est réglé. Merci donc @Clemalex . En revanche, malgré mes vérifications de lignes de code yaml, je n’ai toujours pas obtenu le cout du mois dernier en euro et le cout du mois en cours…une erreur dans mon code??
######conso élec de la semaine####
- platform: template
sensors:
enedis_current_week:
friendly_name: 'Conso semaine en cours'
device_class: energy
unit_of_measurement: 'kWh'
value_template: >-
{{ (state_attr('sensor.myenedis_243907xxxxx','current_week') | float) | round(2) }}
######conso élec de la semaine précédente####
enedis_last_week:
friendly_name: 'Conso semaine dernière'
device_class: energy
unit_of_measurement: 'kWh'
value_template: >-
{{ (state_attr('sensor.myenedis_243907xxxxx','last_week') | float *0.001) |round(2) }}
########conso élec du mois########
enedis_current_month:
friendly_name: 'Conso du mois en cours'
device_class: energy
unit_of_measurement: 'kWh'
value_template: >-
{{ (state_attr('sensor.myenedis_243907xxxxx','current_month') | float) | round(2) }}
######cout conso mois #######
enedis_current_month_cost:
friendly_name: 'Coût mois'
unit_of_measurement: '€'
value_template: >
{{'%.2f'|format(states('sensor.enedis_current_month_243907xxxxxx')|float * 0.1630)}}
########conso élec du mois précédent########
enedis_last_month:
friendly_name: 'Conso du mois dernier'
device_class: energy
unit_of_measurement: 'kWh'
value_template: >-
{{ (state_attr('sensor.myenedis_243907xxxxxx','last_month') | float) |round(2) }}
######cout conso mois précédent#######
enedis_last_month_cost:
friendly_name: 'Coût mois dernier'
unit_of_measurement: '€'
value_template: >
{{'%.2f'|format(states('sensor.enedis_last_month_2439073xxxx')|float * 0.1630)}}
Merci @Clemalex Excellent
Oui je pense à :
Il faudrait englober le tout avant la multiplication :
{{'%.2f'|format((states('sensor.enedis_current_month_243907xxxxxx')|float) * 0.1630)}}
Merci pour ta réponse @Clemalex . J’ai modifié le code comme tu me l’as proposé (parenthèse avant state soit 2 parenthèses et une parenthèse après float mais toujours pareil…
je viens de m’apercevoir de çà:
est ce que çà peut expliquer que le calcul ne fonctionne pas?
Original la présentation dans la carte
@phil oui jolie carte de conso. tu utilise quoi ?
Non, cela indique juste que l’entité ne peut être gérée depuis l’interface graphique…
Pour ton code, que donne t’il lorsque tu le mets dans : Outils de développement → Onglet MODELE ?
Parce que chez moi, ça fonctionne bien :
@foXaCe ,
Je me doutais que ma carte intéresserait …En fait j’ai adapté une carte custom multiple-entity-row .
voici mon code que je te partage.
A+
type: entities
title: Enedis
entities:
- entity: sensor.enedis_current_week
type: 'custom:multiple-entity-row'
name: conso de la semaine
secondary_info: null
entities:
- sensor.enedis_last_week
- entity: sensor.enedis_current_month
type: 'custom:multiple-entity-row'
name: conso du mois
secondary_info: null
entities:
- sensor.enedis_last_month
- entity: sensor.enedis_current_year
type: 'custom:multiple-entity-row'
name: conso de l'année
secondary_info: null
entities:
- sensor.enedis_last_year
- entity: sensor.enedis_current_month_cost
type: 'custom:multiple-entity-row'
name: Coût mois
icon: 'mdi:currency-eur'
secondary_info: null
entities:
- sensor.enedis_last_month_cost
@Clemalex ,
et bien il me remonte une valeur de 0…!!!
@phil C’est normal la valeur 0 tu n’as pas de donnée pour le mois en cours nous sommes le 1er avril et ce n’est pas un poisson donc rien multiplié à un coût donne 0
@sas, il s’agit du mois dernier et non du mois en cours
Bon j’ai trouvé! En fait j’ai un sensor « enedis_last_month » qui est crée à partir de l’attribut de sensor.myenedis_mon_numero_pdl
l’erreur que j’ai commise et pour laquelle je suis vraiment passé à coté malgré mes nombreuses relectures:
en fait pour calculer le cout due la conso du mois dernier voilà ce que j’écrivais:
{{'%.2f'|format((states('sensor.enedis_last_month_243907xxxxxx')|float) * 0.1630)}}
or cette entité n’existe pas! Il ne faut donc pas ajouter le numéro PDL.
avec ce code forcément maintenant çà marche:
{{'%.2f'|format((states('sensor.enedis_last_month')|float) * 0.1630)}}
Merci particulier à @Clemalex car j’ai encore appris à quoi pouvait servir « modèle » dans l’onglet développeur.
Merci @phil
Jolie carte
avec plaisir @foXaCe