NEWS
Protokoll meckert String statt Number
-
@kymchy
Wenn die Warnung erzeugt wird und hinterher die richtige Zahl im Ziel-Datenpunkt steht, wird vermutlich zweimal der Datenpunkt geschrieben: Erst ein Objekt (null) und anschließend die Zahl. -
Ich debuge die Werte erst und schreibe sie dann in die DPs.
-
@kymchy sagte: schreibe sie dann in die DPs.
Bitte das gesamte Skript zeigen, sonst können nur Vermutungen angestellt werden.
-
@paul53 das sieht ziemlich wüst aus:
-
@paul53 vielleicht kommt man der Sache anders auf die Spur. Deine Idee mit den doppelten Werten...wenn ich dieses delay von 1 Sekunde nicht einbaue, schreibt es null in die DPs. Vielleicht liegt ja da der Hase im Pfeffer...wobei das ja erstmal immer so ist, wenn man noch nichts reingeschrieben hat...
-
@kymchy sagte: Vielleicht liegt ja da der Hase im Pfeffer...
Richtig. Was verbirgt sich hinter der Funktion "State Jahreswert schreiben"?
-
@paul53 da erstelle ich den Datenpunkt:
//Datenpunkt erstellen createState("0_userdata.0.PowerOpti.Jahreszählerstände."+folder+'.'+value, { name: value, role: 'value', read: false, write: true, type: 'number', unit: 'kWh', "smartName": { "de": value } });
Warum ist denn value rot?
-
@kymchy
createState() erstellt den Datenpunkt nur einmal und überschreibt ihn nicht. Sollte deshalb außerhalb des Triggers erfolgen.
Was steckt hinter "State PowerOpti Zählerstand schreiben"?@kymchy sagte in Protokoll meckert String statt Number:
Warum ist denn value rot?
Weil es ein Variablenbezeichner ist.
-
@paul53 said in Protokoll meckert String statt Number:
Das ist so richtig, weil das demnächst nur einmal im Jahr stattfinden soll und der Datenpunkt die Jahreszahl enthält. Wird also niemals überschrieben.
das andere ist ein weiterer Datenpunkt für den aktuellen Zählerstand.
-
@paul53 das ist folder aber auch
-
@kymchy sagte: ein weiterer Datenpunkt für den aktuellen Zählerstand.
Das ist der Datenpunkt, der weiter unten beschrieben wird. Wird für den DP vielleicht createState() mit forceCreation = true ausgeführt?
-
@kymchy Also: die Warnmeldung hat mit dem Reinschreiben der Werte gar nichts zu tun.
Ich habe die Funktionen dafür gerade mal deaktiviert.
Die Warnmeldung erscheint nach dem Erstellen der Datenpunkte.edit: habs gerade nochmal versucht, da klappte es. Also leider Kommando zurück...
-
@kymchy sagte: Die Warnmeldung erscheint nach dem Erstellen der Datenpunkte.
Dann übergebe den Initialwert 0 und auch noch common.def = 0.
createState("0_userdata.0.PowerOpti.Jahreszählerstände."+folder+'.'+value, 0, { def: 0, name: value,
-
-
vielen Dank! Jetzt klappt alles.