Probleme mit set und get.global

Hallo Zusammen
ich habe ein Problem mit set und get global.
Wenn ich die Werte im laufenden Betrieb ändere. wird eine Zahl in global geschrieben.
Nach einem Neustart, oder nach Laden des Programms wird ein “String” geschrieben.
Wie kann ich das vermeiden. Macht ja keinen Sinn wenn man nach einem Neustart alle Werte erst wieder
bestätigen muss.
anbei der Flow.

[{"id":"277f84bd8f47dc48","type":"inject","z":"f0f7adee8ce931e4","name":"","props":[{"p":"payload"}],"repeat":"","crontab":"","once":true,"onceDelay":"2","topic":"","payload":"","payloadType":"date","x":500,"y":3760,"wires":[["4ec82c36ee896366","32205024d74a5002"]]},{"id":"a20daff5050a77cb","type":"inject","z":"f0f7adee8ce931e4","name":"","props":[{"p":"payload"}],"repeat":"1800","crontab":"","once":true,"onceDelay":"5","topic":"","payload":"","payloadType":"date","x":500,"y":3800,"wires":[["87ce16212c77ec18","4083e208d581f093"]]},{"id":"87ce16212c77ec18","type":"function","z":"f0f7adee8ce931e4","name":"Get CoolSoll","func":"msg.payload = global.get(\"CoolSoll\");\n\nreturn msg;\n\n","outputs":1,"noerr":0,"initialize":"","finalize":"","libs":[],"x":680,"y":3800,"wires":[["c743aca5e0fd6665"]]},{"id":"4083e208d581f093","type":"function","z":"f0f7adee8ce931e4","name":"Get CoolHys","func":"msg.payload = global.get(\"CoolHys\");\n\nreturn msg;\n\n","outputs":1,"noerr":0,"initialize":"","finalize":"","libs":[],"x":680,"y":3880,"wires":[["62de378f1ac4dedb"]]},{"id":"62de378f1ac4dedb","type":"ui_slider","z":"f0f7adee8ce931e4","name":"Kühlschrank Hys.","label":"Kühlschrank Hys.","tooltip":"","group":"391dcdd754843cbf","order":11,"width":0,"height":0,"passthru":true,"outs":"end","topic":"TauP","topicType":"msg","min":"1","max":"5","step":1,"className":"","x":900,"y":3880,"wires":[["c87bbaec99a14a75"]]},{"id":"32205024d74a5002","type":"file in","z":"f0f7adee8ce931e4","name":"","filename":"pekaway/CoolHys","filenameType":"str","format":"utf8","chunk":false,"sendError":false,"encoding":"none","allProps":false,"x":890,"y":3840,"wires":[["c87bbaec99a14a75"]]},{"id":"c743aca5e0fd6665","type":"ui_slider","z":"f0f7adee8ce931e4","name":"Kühlschrank Soll","label":"Kühlschrank Soll","tooltip":"","group":"391dcdd754843cbf","order":10,"width":0,"height":0,"passthru":true,"outs":"end","topic":"TauP","topicType":"msg","min":"4","max":"30","step":1,"className":"","x":890,"y":3800,"wires":[["3889c3392bcb4514"]]},{"id":"4ec82c36ee896366","type":"file in","z":"f0f7adee8ce931e4","name":"","filename":"pekaway/CoolSoll","filenameType":"str","format":"utf8","chunk":false,"sendError":false,"encoding":"none","allProps":false,"x":900,"y":3760,"wires":[["3889c3392bcb4514"]]},{"id":"3889c3392bcb4514","type":"function","z":"f0f7adee8ce931e4","name":"set Global","func":"global.set(\"CoolSoll\", msg.payload);\nreturn msg;","outputs":1,"noerr":0,"initialize":"","finalize":"","libs":[],"x":1100,"y":3800,"wires":[["6b3895b79a592175"]]},{"id":"c87bbaec99a14a75","type":"function","z":"f0f7adee8ce931e4","name":"set Global","func":"global.set(\"CoolHys\", msg.payload);\nreturn msg;","outputs":1,"noerr":0,"initialize":"","finalize":"","libs":[],"x":1100,"y":3880,"wires":[["754e418bc3e825b6"]]},{"id":"754e418bc3e825b6","type":"file","z":"f0f7adee8ce931e4","name":"","filename":"pekaway/CoolHys","filenameType":"str","appendNewline":false,"createDir":false,"overwriteFile":"true","encoding":"none","x":1290,"y":3880,"wires":[[]]},{"id":"6b3895b79a592175","type":"file","z":"f0f7adee8ce931e4","name":"","filename":"pekaway/CoolSoll","filenameType":"str","appendNewline":false,"createDir":false,"overwriteFile":"true","encoding":"none","x":1290,"y":3800,"wires":[[]]},{"id":"391dcdd754843cbf","type":"ui_group","name":"Test","tab":"2c05de93496b92fe","order":2,"disp":true,"width":12,"collapse":false},{"id":"2c05de93496b92fe","type":"ui_tab","name":"Test","icon":"build","order":22,"disabled":false,"hidden":false}]

Gruß Arno

Du kannst den Wert, der aus der Datei gelesen wird, mit parseFloat(msg.payload) (oder parseInt() wenn es ein Integer sein soll) in eine Zahl konvertieren.

Danke!!!
versuche ich.
@Vincent
meinst du hinter dem read file, in dem set global
““global.set (“CoolHys”, (parseFloat(msg.payload))”” reinschreiben??
Gruß Arno

Ja, das sollte so funktionieren

1 Like

damit funzt es
global.set(“CoolHys”,(parseFloat(msg.payload)));
Danke!!