NEWS
gehen komplexere Objektinfos in Blockly
-
@paul53 das hab ich schon verstanden, aber wo ist der Vorteil zu meinem Versuch mit Minimum der Liste?
edit: deine Liste enthält ja nur IDs!
-
@homoran sagte in gehen komplexere Objektinfos in Blockly:
Auch unter Strafandohung nicht
Vielleicht ja nicht für das komplette Script.
Es würde ja reichen, eine nach Temperatur sortierte Liste der DP zu generieren (in einer JS-Funktion).
Mit dieser Liste kann man doch dann in Blockly weiterarbeiten - oder? -
@homoran sagte: wo ist der Vorteil zu meinem Versuch mit Minimum der Liste?
Vorteil: In der Schleife lässt sich nebenbei auch die zugehörige ID ermitteln.
-
@codierknecht sagte in gehen komplexere Objektinfos in Blockly:
@homoran sagte in gehen komplexere Objektinfos in Blockly:
Auch unter Strafandohung nicht
Vielleicht ja nicht für das komplette Script.
Es würde ja reichen, eine nach Temperatur sortierte Liste der DP zu generieren (in einer JS-Funktion).
Mit dieser Liste kann man doch dann in Blockly weiterarbeiten - oder?das scheint @paul53 so vorzuhaben
-
@paul53 ja! hab ich dann auch gesehen, zu langsam
geht da auch noch der zweitkälteste Raum?
gib mir Zeit bis morgen -
@homoran sagte in gehen komplexere Objektinfos in Blockly:
auch wenn ich nicht aus deiner Welt kommen hatte ich mir den Rest ähnlich vorgestellt.
aber zwei listen über i und j iterieren wobei eine umsortiert wird habe ich nicht synchronisiert bekommen.Mal ein gaaaanz platter Ansatz:
Statt nur die Temp. in die Liste zu packen, baut man einen (normierten) string zusammen - nach dem Muster:
19.20|73wcb745vb74wv74s
21.00|xsck5888z449wvw9h
Das sind die Listenelemente. Die kann man prima sortieren und dann von rechts die id rausprömpeln. -
@codierknecht hatte ich auch schon als json versucht, dann damit aber nicht das Minimum über die Listenfunktion gefunden.
-
@homoran
Nix JSON - einfacher Text. Das sollte ja trotzdem korrekt sortiert werden.
Und dann von rechts x-Zeichen oder ab dem Tennzeichen im string ("|") den Rest. -
@codierknecht klar! gefällt mir.
json geht ja nicht, hier vorne die Zahlen auch als String, alphanumerisch sortieren ist kein Problem.
splitten an der pipe wenn die Zahlen nicht gleiche Zifferzahl haben (in blockly machbar, wenn auch umständlich.könnte von mir sein die Idee
-
@homoran
Sieht zwar echt krude aus und hat mit "Clean" nix zu tun ... aber das wird ja auch keine Raketensteuerung -
@codierknecht ich sach doch: könnte von mir sein
-
@homoran
Wobei mich wundert, dass JSON nicht funzt.
Wenn z.B. die Liste so aussieht:'{"temp":19.2,"id":"12345"}', '{"temp":20.1,"id":"23456"}', '{"temp":18.0,"id":"34567"}'
Dann sollte sich diese Liste doch trotzdem korrekt sortieren lassen.
Das JSON müsste halt komprimiert sein. -
@codierknecht sagte in gehen komplexere Objektinfos in Blockly:
Dann sollte sich diese Liste doch trotzdem korrekt sortieren lassen.
möglich, aber nicht mit dem listen sortieren Block.
Aber wäre das recht so
wenn jetzt noch, was ich nicht zu hoffen wage, 19,0 geschrieben würde ist das aufwändige suchen und splitten nach der pipe nicht nötig.
-
@homoran
Ich würde anstatt der Namen die ID's reinschreiben.
Damit kann man dann wieder alles auslesen was man noch so braucht.
Macht das Steuern dann einfacher.@homoran sagte in gehen komplexere Objektinfos in Blockly:
wenn jetzt noch, was ich nicht zu hoffen wage, 19,0 geschrieben würde ist das aufwändige suchen und splitten nach der pipe nicht nötig.
Schade, lässt sich auch nicht überlisten
-
@homoran
Gute Nacht und viel Erfolg! -
@codierknecht auch mit pipe geht's noch relativ einfach
gn8
-
@homoran sagte: mit einer js-Funktion kommen wirst
Mit einem zweiten Array, das die Raumnamen enthält, geht es auch ohne JS-Funktion.
Will man allerdings komplexere Objekte nach einem Attribut sortieren, ist es in Javascript ein Kinderspiel, in Blockly aber ein Krampf ohne zusätzliche JS-Funktion.
-
@paul53 sagte:
Will man allerdings komplexere Objekte nach einem Attribut sortieren, ist es in Javascript ein Kinderspiel, in Blockly aber ein Krampf ohne zusätzliche JS-Funktion.
ich weiss, aber....
ich habe leider Probleme mit js und ich will es möglichst ohne Hilfe hinbekommen können.
Auch ist es auch für mich ein wenig eine Herausforderung zu sehen was doch nativ mit Blockly geht.Es ärgert mich auch, dass ich auf die Idee von @Codierknecht nicht selber gekommen bin
die hat anscheinend noch ein paar Vorteile für mich und mein Vorhaben.so kann ich in dem zusammengepuzzelten Text für die Liste z.b. statt (oder zusätzlich) des Namens auch die Teil-ID für weiteres arbeiten mitgeben (
daikin.0.
,daikin.1.
usw.) wo ich später Solltemperatur oder State für start Stop zusammen basteln kann.Dadurch erspare ich mir vieles von dem Krampf (hoffe ich).
PS so ähnlich wie dein Vorschlag jetzt ist hatte ich es versucht. bin aber daran gescheitert, dass ich die erste Liste sortiert hatte und dadurch das i nicht für die zweite Liste passte
-
@homoran Also großer Fan von JSONATA würde ich das folgendermaßen lösen. Ich hab ein paar Erläuterungen zur Syntax reingeschrieben:
Viel Erfolg beim Nachbauen! -
@sten-tor sagte in gehen komplexere Objektinfos in Blockly:
großer Fan von JSONATA
hab ich auch schon öfter gehört, sogar dchon irgendwo (nach Vorkauen) eingebaut.
Hab es aber nie wirklich verstanden.Muss ich mich irgendwann mal
näher mit beschäftigen.
Bitte nicht jetzt!
Die Notizen sind schon mal sehr hilfreich! Danke!