NEWS
Blockly Fehlermeldungen bereinigen
-
@tedesco1968 sagte in Blockly Fehlermeldungen bereinigen:
und 182 steht jetzt im Datenpunkt,
Ist doch richtig. Allerdings in rot - weil unbestätigt.
Die letzte Zeile im Log sagt ja genau das:2023-01-11 23:58:00.155 - [32minfo[39m: javascript.0 (30683) script.js.tonis_projekte.antonio.debug_trigger: Wert: 182Quelle: script.js.tonis_projekte.antonio.Strom-Monat_2023,bestätigtfalse
-
@codierknecht said in Blockly Fehlermeldungen bereinigen:
@tedesco1968 sagte in Blockly Fehlermeldungen bereinigen:
und 182 steht jetzt im Datenpunkt,
Ist doch richtig. Allerdings in rot - weil unbestätigt.
Die letzte Zeile im Log sagt ja genau das:2023-01-11 23:58:00.155 - [32minfo[39m: javascript.0 (30683) script.js.tonis_projekte.antonio.debug_trigger: Wert: 182Quelle: script.js.tonis_projekte.antonio.Strom-Monat_2023,bestätigtfalse
Hallo Codierknecht,
richtig?? der Zeitrigger in meinem Blockly steht steht auf 23:58 Uhr, der richtige Wert müsste 36 sein, wo kommen die andere Werte her um 23:56 und zig millisekunden?
Hier ein auschnitt des Blockly:
Unbestätigt weil ich zum ausprobieren den Steuere Wert genommen habe normalerweise nehm ich immer Aktualisiere Wert.
Gruß
Antonio -
@tedesco1968
Ich beziehe mich hier erstmal nur auf Deine Aussage:und 182 steht jetzt im Datenpunkt,
Und das ist gemäß dem Auszug aus dem Log ja scheinbar korrekt.
Was man nämlich nicht sieht: Welcher Trigger feuert denn da die Debug-Ausgabe?
Und in welchen DP soll da geschrieben werden?
Für mich sieht das so aus, als würde das was da als Wert ankommt in den DPJanuar
geschrieben werden. -
@codierknecht said in Blockly Fehlermeldungen bereinigen:
@tedesco1968
Ich beziehe mich hier erstmal nur auf Deine Aussage:und 182 steht jetzt im Datenpunkt,
Und das ist gemäß dem Auszug aus dem Log ja scheinbar korrekt.
Was man nämlich nicht sieht: Welcher Trigger feuert denn da die Debug-Ausgabe?
Und in welchen DP soll da geschrieben werden?
Für mich sieht das so aus, als würde das was da als Wert ankommt in den DPJanuar
geschrieben werden.Hallo Codierknecht,
danke das du dir die Zeit nimmst.
Ja, es geht um den Datenpunkt Januar, in dieser müsste um 23:58 gestern Abend der Wert 36 geschrieben werden, der Tag davor 32 + der Tageswert von 4, den Wert 32 habe ich manuell Gestern Morgen reingeschrieben (da irgendetwas nicht richtig funktioniert).
Das komplette Blockly steht ein paar Posts weiter oben.Die Debug Ausgabe wird von einem Script gesteuert das mir Paul aus diesem Grund gegeben hat und den Datenpunkt Januar abhorcht :).
Woher kommen aber diese Werte um 23:56:00.178 bis 23:56:00.303 ???
Im LOG sieht man doch eindeutig das es vom gleichen Script kommt, der wird aber um 23:58 getriggert, wie geht das????Gruß
Antonio -
@tedesco1968 sagte in Blockly Fehlermeldungen bereinigen:
und den Datenpunkt Januar abhorcht
Dann passen zumindest schon mal Log und Wert zusammen.
Bin gerade dabei ein Blockly zu basteln.
Dauert aber ein bisschen - falls @paul53 nicht mal wieder schneller ist -
@tedesco1968 sagte: Hier ein auschnitt des Blockly:
Das ist offenbar nur ein Teil des Blockly. Um 23:56 passiert auch etwas. Vielleicht haben sich noch Blöcke hinter den sichtbaren Blöcken versteckt? In der Javascript-Ansicht sieht man das komplette Skript.
-
Also mein Blockly würde so aussehen:
Der Name des DP für den Monat wird dynamisch anhand des Tagesdatums ermittelt.
Der Name des DP für den Jahresverbrauch ist ja fix.In beiden DP wird einfach der vorhandene Wert um den Tagesverbrauch erhöht.
Nicht berücksichtigt ist hier der Jahreswechsel.
Am 31.12. oder am 1.1. eines jeden Jahres müssten die neuen Datenpunkte angelegt werden. -
@paul53 said in Blockly Fehlermeldungen bereinigen:
@tedesco1968 sagte: Hier ein auschnitt des Blockly:
Das ist offenbar nur ein Teil des Blockly. Um 23:56 passiert auch etwas. Vielleicht haben sich noch Blöcke hinter den sichtbaren Blöcken versteckt? In der Javascript-Ansicht sieht man das komplette Skript.
Hallo Paul,
damit wäre ja das Problem gelöst, leider ist das nicht so, ich sehe auch da nur ein Zeittrigger (Schedule) anbei das Blokly in JavaScript:
var Strombezug_gesamt_Jahr, M_C3_A4rz, April, Mai, Juni, Juli, August, September, Oktober, November, Dezember, Februar, Januar; schedule("58 23 * * *", async function () { if ((new Date().getFullYear()) == 2023) { Strombezug_gesamt_Jahr = 0; Strombezug_gesamt_Jahr = getState("0_userdata.0.Strombezug_2023.Stombezug_Gesamt_Jahr").val; setState("0_userdata.0.Strombezug_2023.Stombezug_Gesamt_Jahr"/*Stombezug Gesamt Jahr*/, (parseFloat(Strombezug_gesamt_Jahr) + getState("EigeneObjekte.0.Zähler_verbrauch_Tag").val), true); console.error(([(new Date().getFullYear()),'\n',getState("0_userdata.0.Strombezug_2023.Stombezug_Gesamt_Jahr").val].join(''))); } if ((new Date().getMonth() + 1) == 1) { Januar = 0; Januar = getState("0_userdata.0.Strombezug_2023.Januar").val; setState("0_userdata.0.Strombezug_2023.Januar"/*Januar*/, (parseFloat(Januar) + getState("EigeneObjekte.0.Zähler_verbrauch_Tag").val)); console.warn(([(new Date().getMonth() + 1),'\n',getState("0_userdata.0.Strombezug_2023.Januar").val].join(''))); } else if ((new Date().getMonth() + 1) == 2) { Februar = 0; Februar = getState("0_userdata.0.Strombezug_2023.Februar").val; setState("0_userdata.0.Strombezug_2023.Februar"/*Februar*/, (parseFloat(Februar) + getState("EigeneObjekte.0.Zähler_verbrauch_Tag").val), true); } else if ((new Date().getMonth() + 1) == 3) { M_C3_A4rz = 0; M_C3_A4rz = getState("0_userdata.0.Strombezug_2023.März").val; setState("0_userdata.0.Strombezug_2023.März"/*März*/, (parseFloat(M_C3_A4rz) + getState("EigeneObjekte.0.Zähler_verbrauch_Tag").val), true); } else if ((new Date().getMonth() + 1) == 4) { April = 0; April = getState("0_userdata.0.Strombezug_2023.April").val; setState("0_userdata.0.Strombezug_2023.April"/*April*/, (parseFloat(April) + getState("EigeneObjekte.0.Zähler_verbrauch_Tag").val), true); } else if ((new Date().getMonth() + 1) == 5) { Mai = 0; Mai = getState("0_userdata.0.Strombezug_2023.Mai").val; setState("0_userdata.0.Strombezug_2023.Mai"/*Mai*/, (parseFloat(Mai) + getState("EigeneObjekte.0.Zähler_verbrauch_Tag").val), true); } else if ((new Date().getMonth() + 1) == 6) { Juni = 0; Juni = getState("0_userdata.0.Strombezug_2023.Juni").val; setState("0_userdata.0.Strombezug_2023.Juni"/*Juni*/, (parseFloat(Juni) + getState("EigeneObjekte.0.Zähler_verbrauch_Tag").val), true); } else if ((new Date().getMonth() + 1) == 7) { Juli = 0; Juli = getState("0_userdata.0.Strombezug_2023.Juli").val; setState("0_userdata.0.Strombezug_2023.Juli"/*Juli*/, (parseFloat(Juli) + getState("EigeneObjekte.0.Zähler_verbrauch_Tag").val), true); } else if ((new Date().getMonth() + 1) == 8) { August = 0; August = getState("0_userdata.0.Strombezug_2023.August").val; setState("0_userdata.0.Strombezug_2023.August"/*August*/, (parseFloat(August) + getState("EigeneObjekte.0.Zähler_verbrauch_Tag").val), true); } else if ((new Date().getMonth() + 1) == 9) { September = 0; September = getState("0_userdata.0.Strombezug_2023.September").val; setState("0_userdata.0.Strombezug_2023.September"/*September*/, (parseFloat(September) + getState("EigeneObjekte.0.Zähler_verbrauch_Tag").val), true); } else if ((new Date().getMonth() + 1) == 10) { Oktober = 0; Oktober = getState("0_userdata.0.Strombezug_2023.Oktober").val; setState("0_userdata.0.Strombezug_2023.Oktober"/*Oktober*/, (parseFloat(Oktober) + getState("EigeneObjekte.0.Zähler_verbrauch_Tag").val), true); } else if ((new Date().getMonth() + 1) == 11) { November = 0; November = getState("0_userdata.0.Strombezug_2023.November").val; setState("0_userdata.0.Strombezug_2023.November"/*November*/, (parseFloat(November) + getState("EigeneObjekte.0.Zähler_verbrauch_Tag").val), true); } else if ((new Date().getMonth() + 1) == 12) { Dezember = 0; Dezember = getState("0_userdata.0.Strombezug_2023.Dezember").val; setState("0_userdata.0.Strombezug_2023.Dezember"/*Dezember*/, (parseFloat(Dezember) + getState("EigeneObjekte.0.Zähler_verbrauch_Tag").val), true); } });
Gruß
Tedesco -
@codierknecht said in Blockly Fehlermeldungen bereinigen:
Also mein Blockly würde so aussehen:
Der Name des DP für den Monat wird dynamisch anhand des Tagesdatums ermittelt.
Der Name des DP für den Jahresverbrauch ist ja fix.In beiden DP wird einfach der vorhandene Wert um den Tagesverbrauch erhöht.
Nicht berücksichtigt ist hier der Jahreswechsel.
Am 31.12. oder am 1.1. eines jeden Jahres müssten die neuen Datenpunkte angelegt werden.Hallo Codierknecht,
ja
, wenn du ein paar Posts zurückgehst kannst du sehen das mir Paul schon so etwas für meinen PV Ertrag gezeigt hat, diese habe ich auch schon implementiert.
Dieses Blockly werde ich irgendwann auch so ähnlich machen, wenn ich mal Zeit habe. Dann mache ich das über aut. Datenpunktgenerierung und aut. Datenübernahme und JavaSript Funktionen, sieht man auch schon etliche Posts vorher.
Bloß dieses komische verhalten in meinem einfaches Script kann ich nicht nachvollziehen.
Gruß
Antonio -
@tedesco1968
Na irgendwas muss ja um 23:56 feuern.
Hast Du mal die JS.Instanz oder gar den ganze ioB neu gestartet?
Vielleicht hängen da noch irgendwelche alten Reste rum. -
@codierknecht said in Blockly Fehlermeldungen bereinigen:
@tedesco1968
Na irgendwas muss ja um 23:56 feuern.
Hast Du mal die JS.Instanz oder gar den ganze ioB neu gestartet?
Vielleicht hängen da noch irgendwelche alten Reste rum.Nein, bin bei der Arbeit.
JavaScript Adapter kann ich neu starten, IOB erst heute Abend.
Was auch seltsam ist wenn ich das Skript jetzt ausführen würde, kommen die richtige Werte, habe das schon ein paar mal durchprobiert.
Habe mal die Datenpunkte berichtigt und das Skript gestartet, also 36 kWh Vortag+4 kWh bis jetzt = 40 kWh siehe Bild
2023-01-12 14:43:00.022 - error: javascript.0 (6655) script.js.tonis_projekte.antonio.Strom-Monat_2023: 2023 40 2023-01-12 14:43:00.023 - warn: javascript.0 (6655) script.js.tonis_projekte.antonio.Strom-Monat_2023: 1 40 2023-01-12 14:43:00.091 - info: javascript.0 (6655) script.js.tonis_projekte.antonio.debug_trigger: Wert: 40Quelle: script.js.tonis_projekte.antonio.Strom-Monat_2023,bestätigtfalse
Hier wird ja alles richtig ausgeführt. Wenn ich Morgen früh nachschaue stehen wieder komische Sachen drin.
Gruß
Antonio