NEWS
[gelöst] Blockly Skript erzeugt viele Fehler im Log
-
Aber ich frage mich warum.
Der Selektor findet die Datenpunkte ja. -
@david-g sagte in Blockly Skript erzeugt viele Fehler im Log:
Aber ich frage mich warum.
Der Selektor findet die Datenpunkte ja.Dann bau halt mal ein paar logs ein, dann sieht du ja ob er die richtig abgreift bzw. ob du diese richtig weiterverarbeitest.
-
@david-g sagte: Im Log kommt bei der Ausführung:
Zu einigen Datenpunkten "*.alive" existiert offenbar kein Zustand. Deshalb sollte
gegen eine JS-Funktion mit Ergebnis und folgendem Inhalt ausgetauscht werden:
if(existsState(id)) return getState(id).val;
-
Das ist es. Hab mir die Datenpunkte mal angesehen.
Habe den JS Baustein erstellt.
allerdings finde ich nur das "normale" "etwas tun" ohne die Option nochwas dran zu hängen. -
@david-g sagte: die Option nochwas dran zu hängen.
Zahnrad links.
Inhalt: 3 Punkte rechts. -
Irgendwo hab ich wohl einen Fehler.
Beim Speichern kommt im Log
javascript.0 2022-04-25 14:45:13.834 error at processImmediate (internal/timers.js:466:21) javascript.0 2022-04-25 14:45:13.833 error at Immediate._onImmediate (/opt/iobroker/node_modules/iobroker.javascript/main.js:1311:17) javascript.0 2022-04-25 14:45:13.833 error at /opt/iobroker/node_modules/iobroker.javascript/main.js:1836:17 javascript.0 2022-04-25 14:45:13.833 error at prepareScript (/opt/iobroker/node_modules/iobroker.javascript/main.js:1735:37) javascript.0 2022-04-25 14:45:13.833 error at createVM (/opt/iobroker/node_modules/iobroker.javascript/main.js:1486:28) javascript.0 2022-04-25 14:45:13.832 error at Object.createScript (vm.js:262:10) javascript.0 2022-04-25 14:45:13.832 error at new Script (vm.js:102:7) javascript.0 2022-04-25 14:45:13.832 error SyntaxError: Unexpected token ')' javascript.0 2022-04-25 14:45:13.832 error ^ javascript.0 2022-04-25 14:45:13.831 error if(existsState(id)) return getState(id).val;))) javascript.0 2022-04-25 14:45:13.831 error script.js.Eigene_Scripte.VIS.Tabelle_Adapter compile failed: at script.js.Eigene_Scripte.VIS.Tabelle_Adapter:5
-
@david-g sagte:
error if(existsState(id)) return getState(id).val;)))
Rechts sind 3 schließende Klammern zu viel. Außerdem musst Du
id
durchx
ersetzen, da Du den Übergabeparameter nicht umbenannt hast. Oder Du änderst x in id: -
Oh, da muss ich beim kopieren was falsch gemacht haben.
Speichern klappt jetzt.Allerdings kommt im Log jetzt:
javascript.0 2022-04-25 14:51:34.547 error at processImmediate (internal/timers.js:464:21) javascript.0 2022-04-25 14:51:34.547 error at Immediate.<anonymous> (/opt/iobroker/node_modules/@iobroker/js-controller-adapter/src/lib/adapter/adapter.js:5909:56) javascript.0 2022-04-25 14:51:34.547 error at Object.stateChange (/opt/iobroker/node_modules/iobroker.javascript/main.js:530:29) javascript.0 2022-04-25 14:51:34.546 error at Object.callback (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1082:38) javascript.0 2022-04-25 14:51:34.546 error at Object.<anonymous> (script.js.Eigene_Scripte.VIS.Tabelle_Adapter:26:15) javascript.0 2022-04-25 14:51:34.546 error at etwas_tun (script.js.Eigene_Scripte.VIS.Tabelle_Adapter:5:20) javascript.0 2022-04-25 14:51:34.545 error script.js.Eigene_Scripte.VIS.Tabelle_Adapter: ReferenceError: id is not defined javascript.0 2022-04-25 14:51:34.346 error at processImmediate (internal/timers.js:464:21) javascript.0 2022-04-25 14:51:34.345 error at Immediate.<anonymous> (/opt/iobroker/node_modules/@iobroker/js-controller-adapter/src/lib/adapter/adapter.js:5909:56) javascript.0 2022-04-25 14:51:34.345 error at Object.stateChange (/opt/iobroker/node_modules/iobroker.javascript/main.js:530:29) javascript.0 2022-04-25 14:51:34.345 error at Object.callback (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1082:38) javascript.0 2022-04-25 14:51:34.344 error at Object.<anonymous> (script.js.Eigene_Scripte.VIS.Tabelle_Adapter:26:15) javascript.0 2022-04-25 14:51:34.344 error at etwas_tun (script.js.Eigene_Scripte.VIS.Tabelle_Adapter:5:20) javascript.0 2022-04-25 14:51:34.343 error script.js.Eigene_Scripte.VIS.Tabelle_Adapter: ReferenceError: id is not defined
Die Abfrage aus dem falls Block scheint auch nicht stattzufinden. Jedenfalls ändert sich die Tabelle nicht, wenn ich einen Adapter stoppe.
-
@david-g sagte:
ReferenceError: id is not defined
Habe ich eben schon geschrieben: Ändern id --> x oder x --> id.
-
Danke klappt.
Den Edit hatte ich nicht gesehen. -
@paul53
Wo du hier das Skript einmal gesehen hast.
Hab mir das so zurechtgebastelt, dass alle 3 Durchgänge der Zeilenumbruch eingebaut wird.Geht das auch noch was einfacher? Ggf sogar einen Baustein? Ich hab da nichts gefunden.
P. S.:
Komisch,dass nicht bei allen Adaptern der alive Status gepflegt wird. -
@david-g sagte: Geht das auch noch was einfacher?
HTML ist nicht mein Ding. Die Variable
umbruch
wäre verzichtbar: -
Okay.
Dann war der Ansatz mit dem Zählen uns teilbar ja garnicht so daneben.