Stateformat Subtraktion funktioniert nicht (mehr) -gelöst-

Begonnen von Teamdrachen, 18 Juli 2021, 20:46:19

Vorheriges Thema - Nächstes Thema

Teamdrachen

Servus.

irgendwie steh ich gerade vor einem Problem und komm nicht auf die Lösung.
Seit einiger Zeit funktioniert meine Stateformat Berechnung nicht mehr. Sie lief mal und ich weiß nicht genau seit wann es hakt... aber es hakt.

EV sollte normalerweise aus Generatorleistung - Einspeisung berechnet werden.
Generatorleistung wird richtig angezeigt.
Einspeisung wird richtig angezeigt.
Berechnung funktioniert jedoch nicht (mehr), es wird die Generatorleistung angezeigt.




{
my $state = ReadingsVal("SMA", "modulstate", "normal");
  return  "EV: " . (ReadingsNum("SMA","SPOT_PACTOT",0) - ReadingsNum("E_Meter","Saldo_Wirkleistung",0)). "W / G: " . ReadingsNum("SMA","SPOT_PACTOT",0) . "W / E: " . ReadingsNum($name,"state",0) . "W" if($state eq "normal");
  return  "Verbrauch: " . ReadingsNum($name,"Bezug_Wirkleistung",0) . "W   /   Zaehler: " . ReadingsNum($name,"Bezug_Wirkleistung_Zaehler",0) . "kWh"  if($state eq "sleep");
}



EDIT

Hat ich von selbst erledigt.
Da sucht man ein paar Stunden eine Lösung und kommt erst drauf wenn man den eigenen Beitrag sieht.
hab einfach umgestellt auf.
#{
my $state = ReadingsVal("SMA", "modulstate", "normal");
  return  "EV: " . (ReadingsNum("SMA","SPOT_PACTOT",0) - ReadingsNum($name,"state",0)). "W / G: " . ReadingsNum("SMA","SPOT_PACTOT",0) . "W / E: " . ReadingsNum($name,"state",0) . "W" if($state eq "normal");
  return  "Verbrauch: " . ReadingsNum($name,"Bezug_Wirkleistung",0) . "W   /   Zaehler: " . ReadingsNum($name,"Bezug_Wirkleistung_Zaehler",0) . "kWh"  if($state eq "sleep");
}


und es läuft wieder.
Wobei es mit dem oberen Code auch hätte laufen müssen.