J’ai fait le test ce matin et ça fonctionne mais comme tu partais sur des helpers sans global je n’ai pas partagé.
ça doit aussi fonctionner pour flow.set().
[{"id":"dbea5f3f3f2d4190","type":"tab","label":"Différence date ","disabled":false,"info":"","env":[]},{"id":"7756affa704fb4b8","type":"debug","z":"dbea5f3f3f2d4190","name":"","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"false","statusVal":"","statusType":"auto","x":830,"y":200,"wires":[]},{"id":"0adec348a1076f06","type":"function","z":"dbea5f3f3f2d4190","name":"Jour","func":"msg.payload = msg.payload /1000 ;\nmsg.payload = parseFloat(msg.payload).toFixed(0);\nmsg.payload = Number(msg.payload);\nglobal.set('datejour1', msg.payload, \"default\");\nreturn msg;","outputs":1,"timeout":"","noerr":0,"initialize":"","finalize":"","libs":[],"x":630,"y":200,"wires":[["7756affa704fb4b8"]]},{"id":"81196c7c033e4f1f","type":"function","z":"dbea5f3f3f2d4190","name":"DiffDate","func":"var datejour1 = global.get('datejour1', \"default\");\nvar lastOnDate = global.get('lastOnDate', \"default\");\nvar tempsval = datejour1 - lastOnDate;\ntempsval = ((tempsval /3600) );\ntempsval = parseFloat(tempsval).toFixed(0);\nmsg.payload = Number(tempsval -2);\nglobal.set('datenewexpir1', msg.payload, \"default\");\nreturn msg;","outputs":1,"timeout":"","noerr":0,"initialize":"","finalize":"","libs":[],"x":640,"y":140,"wires":[["8ee0a403f6df497a"]]},{"id":"7fd42899a359e63d","type":"inject","z":"dbea5f3f3f2d4190","name":"","props":[{"p":"payload"},{"p":"topic","vt":"str"}],"repeat":"","crontab":"","once":false,"onceDelay":0.1,"topic":"","payloadType":"date","x":210,"y":140,"wires":[["b131be350e4664d9","973ff7b22f5f6244"]]},{"id":"b131be350e4664d9","type":"ui_date_picker","z":"dbea5f3f3f2d4190","name":"","label":"date","group":"3c1c6a94b059fb77","order":2,"width":0,"height":0,"passthru":true,"topic":"topic","topicType":"msg","className":"","x":430,"y":200,"wires":[["0adec348a1076f06"]]},{"id":"8ee0a403f6df497a","type":"debug","z":"dbea5f3f3f2d4190","name":"debug 23","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"false","statusVal":"","statusType":"auto","x":820,"y":140,"wires":[]},{"id":"56c1cf9535553e2e","type":"server-state-changed","z":"dbea5f3f3f2d4190","name":"Lampe Marine","server":"443ff1c5.63d78","version":6,"outputs":1,"exposeAsEntityConfig":"","entities":{"entity":["light.lampe_marine"],"substring":[],"regex":[]},"outputInitially":false,"stateType":"str","ifState":"","ifStateType":"str","ifStateOperator":"is","outputOnlyOnStateChange":true,"for":"0","forType":"num","forUnits":"minutes","ignorePrevStateNull":false,"ignorePrevStateUnknown":false,"ignorePrevStateUnavailable":false,"ignoreCurrentStateUnknown":false,"ignoreCurrentStateUnavailable":false,"outputProperties":[{"property":"payload","propertyType":"msg","value":"","valueType":"entityState"},{"property":"data","propertyType":"msg","value":"","valueType":"eventData"},{"property":"topic","propertyType":"msg","value":"","valueType":"triggerId"}],"x":190,"y":60,"wires":[["852b3c2602b2e612","973ff7b22f5f6244"]]},{"id":"6c05704a4fe2ab65","type":"debug","z":"dbea5f3f3f2d4190","name":"debug 26","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"false","statusVal":"","statusType":"auto","x":820,"y":60,"wires":[]},{"id":"852b3c2602b2e612","type":"function","z":"dbea5f3f3f2d4190","name":"function 3","func":"let dateOn = new Date().toISOString();\nmsg.payload = dateOn.substring(0,dateOn.length -5);\n\nmsg.payload = Date.parse(msg.payload) /1000;\nglobal.set('lastOnDate', msg.payload, \"default\");\nreturn msg;\n","outputs":1,"timeout":0,"noerr":0,"initialize":"","finalize":"","libs":[],"x":440,"y":60,"wires":[["6c05704a4fe2ab65","973ff7b22f5f6244"]]},{"id":"973ff7b22f5f6244","type":"delay","z":"dbea5f3f3f2d4190","name":"","pauseType":"delay","timeout":"2","timeoutUnits":"seconds","rate":"1","nbRateUnits":"1","rateUnits":"second","randomFirst":"1","randomLast":"5","randomUnits":"seconds","drop":false,"allowrate":false,"outputs":1,"x":440,"y":140,"wires":[["81196c7c033e4f1f"]]},{"id":"3c1c6a94b059fb77","type":"ui_group","name":"Utilities","tab":"7a0a419fb6a93b55","order":3,"disp":true,"width":"6","collapse":false},{"id":"443ff1c5.63d78","type":"server","name":"Home Assistant Bruno","version":5,"addon":true,"rejectUnauthorizedCerts":true,"ha_boolean":"y|yes|true|on|home|open","connectionDelay":true,"cacheJson":true,"heartbeat":false,"heartbeatInterval":"30","areaSelector":"friendlyName","deviceSelector":"friendlyName","entitySelector":"friendlyName","statusSeparator":"at: ","statusYear":"hidden","statusMonth":"short","statusDay":"numeric","statusHourCycle":"h23","statusTimeFormat":"h:m","enableGlobalContextStore":true},{"id":"7a0a419fb6a93b55","type":"ui_tab","name":"Arbeitszimmer","icon":"dashboard","order":3}]
Le résultat de ce flow est en heures.
N’oublie pas d’arroser en attendant 
Bob