NEWS
Ausführungsreihenfolge von Blockly- Skripten lässt sich nicht ändern
-
Hallo,
bislang hatte ich mir noch keine Gedanken dazu gemacht, jetzt habe ich aber 8 Rolladenschalter installiert. Die Stellung der Schalter ändert Variablen. Ein Skript schaltet diese Variablen und resettet die Schalter nach 45 Sekunden auf OFF-Stellung.
Jetzt muss ich aber dieses Skript nach hinten schieben um vorher mit einem weiteren Skript die Ursprungsstellung abzufragen.
Langes Gerede:
Ich muss die Ausführungsreihenfolge im Skripte Teil ändern und klicke dazu auf den Doppelpfeil (Neu ordnen). Dann ändere ich die Reihenfolge der Skripte durch ziehen an die neue Ausführungsstelle und klicke auf den Haken. Die Reihenfolge der Skripte ist dann aber wie vorher.
Mache ich was falsch? ioBroker ist aktuell, alle Adapter auch. Ist das ein bug?
Danke
Jo
-
OK, noch ein Versuch mit Bildern:

Also, ich gehe mal naiv davon aus, dass die Blockly-Skripte von oben nach unten abgearbeitet werden. Ich möchte nun z.B., dass das Skript Urlaub Jo direkt nach Dienst Jo ausgeführt werden soll. Ich drücke also auf den Doppelpfeil

und beginne Urlaub nach oben zu ziehen und platziere es hinter Dienst Jo

Nach einem Klick auf den Haken

sieht man aber wieder das Gleiche wie am Anfang.

Es kann nun also ein bug sein, oder ich denke zu naiv. Ich kann leider nicht nachvollziehen, was @Schuko80 mit seinem Skript erreichen kann und wie man so was aufbaut.
Hoffe, dass man das nachvollziehen kann.
Danke
Jo
-
Evtl ist diese Aussage jetzt falsch, aber in meinen Augen werden die Scripte parallel abgearbeitet. Also jedes Script in einem Thread.
Bei JavaScript ist es auf jeden Fall so, das innerhalb eines Scripte nicht ohne weiteres auf Rückmeldung von einem Befehl gewartet wird, sondern die nachfolgenden Befehle weiter abgearbeitet werden.
Wenn es also wichtig ist, das erst ein Script abgearbeitet wird, würde ich aus zwei eins machen und dort eine Abfrage einbauen, so das der zweite Teil im Script erst abgearbeitet wird, wenn der erste Teil ein bestimmtes Ergebniss zurückliefert
Ich sehe gerade, deine Scripte sind alle aktiv, evtl. Kannst du auch am Ende von deinem ersten Script das zweite Script starten, dann müsste es aber standartmässig auf false (nicht ausgeführt) stehen und im Anschluss wieder beendet werden. Das ist halt davon abhängig, was die Scripte überhaupt bezwecken sollen.
-
Ok, jetzt habe ich dann schon mal verstanden, was Du mit einem großen Skript meinst.
Ich würde aber lieber das Ganze in Teilaufgaben zerlegen. Jetzt muss ich dann noch mal ein wenig Hirnschmalz investieren, ob das so überhaupt funktioniert, wie ich mir das vorstelle. Dann bleibt aber noch die Frage, was man mit "Neu ordnen" eigentlich erreichen können soll? Denn irgend wie funktioniert das ja nicht…
Grüße
Jo
-
Alphabetische Anordnung nach Scriptname?
Hat mit der Ausführungsreihenfolge nichts zu tun.
Gruß Ulrich
Gesendet von meinem SM-J700H mit Tapatalk