Seite 2 von 2

Re: PV Überschussladen - Ladefreigabe

Verfasst: 8. Jul 2023 16:46
von JeKo1969
Uih, vielen Dank für die ausführliche Antwort.

Ich verwende VS Code und muss mich offensichtlich mal damit auseinander setzen, wie man da sieht, ob man einen Fehler gemacht hat. Die geschweiften Klammern beim if sind Absicht, da ich später noch die Phasenströme ergänzen möchte. "LoadPower" dient nur zur Visualisierung in OpenHab. Den Ansatz mit der Scale Transformation lasse ich mir auf jeden Fall nochmal durch den Kopf gehen.

Leider bleibt die Fehlermeldung:

16:32:10.641 [ERROR] [.internal.handler.ScriptActionHandler] - Script execution of rule with UID 'Ueberschussladen-1' failed: Could not cast 2.56 kW to void; line 21, column 19, length 37 in Ueberschussladen

line 21, column 19, length 37 ist der unterstrichene Bereich in dieser Code Zeile:

Export = (SolarEdge_Live_Export.state as number).floatValue

Item SolarEdge_Live_Export ist vom Typ Number:Power

Ich kann mir nicht erklären was genau "Could not cast 2.56 kW to void" bedeutet. Warum ist denn da immernoch die Einheit kW dabei ?

Re: PV Überschussladen - Ladefreigabe

Verfasst: 8. Jul 2023 17:53
von violine21
JeKo1969 hat geschrieben: 8. Jul 2023 16:46 Ich kann mir nicht erklären was genau "Could not cast 2.56 kW to void" bedeutet. Warum ist denn da immernoch die Einheit kW dabei ?
Hast du das mal probiert?

Code: Alles auswählen

var Export = 0.0
var Export = (SolarEdge_Live_Export.state as number).floatValue
Die Variable sollte vor dem Beschreiben eine Deklaration bekommen, hier eine Zahl mit Komma, da du mit floatValue eine Kommazahl
ohne Einheit bekommst.
Übrigens sind die geschweiften Klammern in den if-Konstrukten erforderlich und dienen nicht der besseren Lesbarkeit.
Insofern hast du sie im unteren Teil deiner Rule richtig verwendet.

Re: PV Überschussladen - Ladefreigabe

Verfasst: 8. Jul 2023 19:17
von udo1toni
Tippfehler meinerseits... bitte Number statt number :)

Re: PV Überschussladen - Ladefreigabe

Verfasst: 9. Jul 2023 12:23
von JeKo1969
Läuft ! :D Danke !