Arbeiten mit Time - Datentyp
Moderator: Co-Administratoren
Arbeiten mit Time - Datentyp
Liebe Gemeinde,
ich möchte gern in Homematic CCU2 skripts mit dem Datentyp Time arbeiten. Habt Ihr dazu einen guten Link zu einer Beschreibung? Ich finde immer nur Detaillösungen - teilweise funktionieren die nicht einmal.
Ich möchte gern:
- Zeitdifferenzen zwischen zwei Time-Werten berechnen,
- von und nach String konvertieren,
- Zeiten zu anderen Zeiten addieren oder subtrahieren,
- mit den Astrofunktionen arbeiten.
Vielen Dank im Voraus, Didiator
ich möchte gern in Homematic CCU2 skripts mit dem Datentyp Time arbeiten. Habt Ihr dazu einen guten Link zu einer Beschreibung? Ich finde immer nur Detaillösungen - teilweise funktionieren die nicht einmal.
Ich möchte gern:
- Zeitdifferenzen zwischen zwei Time-Werten berechnen,
- von und nach String konvertieren,
- Zeiten zu anderen Zeiten addieren oder subtrahieren,
- mit den Astrofunktionen arbeiten.
Vielen Dank im Voraus, Didiator
---------------------------------------------------------------
stay original...
Debmatic auf der Basis von Paspberry Pi4, SSD
ca. 90 HM, HmIP und Wired Geräte
HB-RF-ETH
Alexa Anbindung
Node-Red
stay original...
Debmatic auf der Basis von Paspberry Pi4, SSD
ca. 90 HM, HmIP und Wired Geräte
HB-RF-ETH
Alexa Anbindung
Node-Red
-
- Beiträge: 10752
- Registriert: 24.02.2011, 01:34
- System: CCU
- Hat sich bedankt: 65 Mal
- Danksagung erhalten: 672 Mal
Re: Arbeiten mit Time - Datentyp
Guten Link?didiator hat geschrieben:Habt Ihr dazu einen guten Link zu einer Beschreibung?
Der beste Link zur Doku ist der über homematic-inside zur >> Scriptdoku << (Sollte im Teil 2 beschrieben sein)
Zumindest einen Teil deines Ansinnens solltest du dort nachlesen können. Den Rest kannst du ja hier erfragen.
Alchy
Blacklist................... almost full
Ignoranz ist die Summe aller Maßnahmen die man ergreift, um bestehende Tatsachen nicht sehen zu müssen.
© Sandra Pulsfort (*1974)
Lies bitte die Logik von WebUI Programmen und die Tipps und Tricks für Anfänger.
Wichtig auch CUxD ersetzt System.exec. Die HM Script Doku (Downloadart Skripte) hilft auch weiter.
Zum Testen von Scripten den >> HomeMatic Script Executor << von Anli benutzen.
- shk
- Beiträge: 18
- Registriert: 02.02.2018, 08:55
- Wohnort: Austria
- Danksagung erhalten: 1 Mal
- Kontaktdaten:
Re: Arbeiten mit Time - Datentyp
Hi!
LG
Andreas
- Zeitdifferenzen zwischen zwei Time-Werten berechnen
Das geht durch die Umwandlung von Time-Variablen in Integer (die Zeit liegt dann in Sekunden im UNIX-timeformat vor). Dann kann eine Differenz in Sekunden berechnet werden:Code: Alles auswählen
var diff = time1.ToInteger() - time2.ToInteger();
- von und nach String konvertieren
- von String zu Zeit:
Code: Alles auswählen
string_variable.ToTime()
- von Zeit zu String:
Code: Alles auswählen
time_variable.ToString() # ergibt einen String im Format "2008-12-24 18:30:00"
- von String zu Zeit:
- Zeiten zu anderen Zeiten addieren oder subtrahieren
Siehe Differenz-Bildung, Addition/Subtraktion in Sekunden. - mit den Astrofunktionen arbeiten
- Aktuelle Uhrzeit mit der Funktion system.Date()
- Sonnen-Aufgang mit der Funktion system.SunriseTime()
- Sonnen-Untergang mit der Funktion system.SunsetTime()
LG
Andreas
Smart Home System Integrator Smart Home Kos http://www.smarthomekos.at
Re: Arbeiten mit Time - Datentyp
Vielen Dank, Leute!
Das hilft mir weiter. Ich hatte nur vermutet, dass man nicht so viel konvertieren muss und direkt im Datentyp Time bleiben kann. Aber dann mache ich es eben so... geht auch...
Vielen Dank!
Das hilft mir weiter. Ich hatte nur vermutet, dass man nicht so viel konvertieren muss und direkt im Datentyp Time bleiben kann. Aber dann mache ich es eben so... geht auch...
Vielen Dank!
---------------------------------------------------------------
stay original...
Debmatic auf der Basis von Paspberry Pi4, SSD
ca. 90 HM, HmIP und Wired Geräte
HB-RF-ETH
Alexa Anbindung
Node-Red
stay original...
Debmatic auf der Basis von Paspberry Pi4, SSD
ca. 90 HM, HmIP und Wired Geräte
HB-RF-ETH
Alexa Anbindung
Node-Red
Re: Arbeiten mit Time - Datentyp
Sorry, doch noch ne Frage...
Wie kann ich 2:30 Stunden zu system.Date() hinzuaddieren? Hab da irgendwie nciht aufgepasst. Es soll wieder ein Datentyp Time am Ende stehen.
Wie kann ich 2:30 Stunden zu system.Date() hinzuaddieren? Hab da irgendwie nciht aufgepasst. Es soll wieder ein Datentyp Time am Ende stehen.
---------------------------------------------------------------
stay original...
Debmatic auf der Basis von Paspberry Pi4, SSD
ca. 90 HM, HmIP und Wired Geräte
HB-RF-ETH
Alexa Anbindung
Node-Red
stay original...
Debmatic auf der Basis von Paspberry Pi4, SSD
ca. 90 HM, HmIP und Wired Geräte
HB-RF-ETH
Alexa Anbindung
Node-Red
- shk
- Beiträge: 18
- Registriert: 02.02.2018, 08:55
- Wohnort: Austria
- Danksagung erhalten: 1 Mal
- Kontaktdaten:
Re: Arbeiten mit Time - Datentyp
2:30 Stunden entsprechen 9000 Sekunden. Das wär dann also so:
Um das ganze wieder als Time zu erhalten muss dann wieder konvertiert werden:
LG Andreas
Code: Alles auswählen
system.Date("%F %T").ToTime().ToInteger() + 9000
Um das ganze wieder als Time zu erhalten muss dann wieder konvertiert werden:
Code: Alles auswählen
(system.Date("%F %T").ToTime().ToInteger() + 9000).ToTime()
Smart Home System Integrator Smart Home Kos http://www.smarthomekos.at
-
- Beiträge: 10752
- Registriert: 24.02.2011, 01:34
- System: CCU
- Hat sich bedankt: 65 Mal
- Danksagung erhalten: 672 Mal
Re: Arbeiten mit Time - Datentyp
Der Möglichkeiten gibt es viele.
So genehm?
Alchy
So genehm?
Code: Alles auswählen
! Addieren von add in Sekunden zur Uhrzeit und Ausgabe auf Bildschirm by alchy
integer add = 9000;
string jetzt = system.Date("%F %T");
integer diff = jetzt.ToTime().ToInteger() + add;
string nachher = diff.ToTime();
WriteLine("jetzt ist es: "#jetzt #" und "#add#" Sekunden später ist es "#nachher);
Blacklist................... almost full
Ignoranz ist die Summe aller Maßnahmen die man ergreift, um bestehende Tatsachen nicht sehen zu müssen.
© Sandra Pulsfort (*1974)
Lies bitte die Logik von WebUI Programmen und die Tipps und Tricks für Anfänger.
Wichtig auch CUxD ersetzt System.exec. Die HM Script Doku (Downloadart Skripte) hilft auch weiter.
Zum Testen von Scripten den >> HomeMatic Script Executor << von Anli benutzen.
Re: Arbeiten mit Time - Datentyp
Hi Alchy,
...ist schon aufwendig, oder? Man muss immer hin- und herkonvertieren. Andere Programmiersprachen bieten ja eine Add - Funktion auch für die Zeit an. Haben wir hier offenbar nicht. Schade.
Aber ich bin noch am Lernen und muss halt mit der vorgegebenen Syntax klar kommen.
Vielen Dank!
...ist schon aufwendig, oder? Man muss immer hin- und herkonvertieren. Andere Programmiersprachen bieten ja eine Add - Funktion auch für die Zeit an. Haben wir hier offenbar nicht. Schade.
Aber ich bin noch am Lernen und muss halt mit der vorgegebenen Syntax klar kommen.
Vielen Dank!
---------------------------------------------------------------
stay original...
Debmatic auf der Basis von Paspberry Pi4, SSD
ca. 90 HM, HmIP und Wired Geräte
HB-RF-ETH
Alexa Anbindung
Node-Red
stay original...
Debmatic auf der Basis von Paspberry Pi4, SSD
ca. 90 HM, HmIP und Wired Geräte
HB-RF-ETH
Alexa Anbindung
Node-Red
-
- Beiträge: 10752
- Registriert: 24.02.2011, 01:34
- System: CCU
- Hat sich bedankt: 65 Mal
- Danksagung erhalten: 672 Mal
Re: Arbeiten mit Time - Datentyp
Nach einer Mütze Schlaf und einem netten Hinweis eines Freundes - eben ohne Konvertierung
Alchy
Code: Alles auswählen
integer lAdd = 9000;
time lJetzt = currenttime;
time lNachher = lJetzt + lAdd;
WriteLine("jetzt ist es: " # lJetzt # " und " # lAdd # " Sekunden später ist es " # lNachher);
Blacklist................... almost full
Ignoranz ist die Summe aller Maßnahmen die man ergreift, um bestehende Tatsachen nicht sehen zu müssen.
© Sandra Pulsfort (*1974)
Lies bitte die Logik von WebUI Programmen und die Tipps und Tricks für Anfänger.
Wichtig auch CUxD ersetzt System.exec. Die HM Script Doku (Downloadart Skripte) hilft auch weiter.
Zum Testen von Scripten den >> HomeMatic Script Executor << von Anli benutzen.
Re: Arbeiten mit Time - Datentyp
OK, probier ich aus, Danke!
---------------------------------------------------------------
stay original...
Debmatic auf der Basis von Paspberry Pi4, SSD
ca. 90 HM, HmIP und Wired Geräte
HB-RF-ETH
Alexa Anbindung
Node-Red
stay original...
Debmatic auf der Basis von Paspberry Pi4, SSD
ca. 90 HM, HmIP und Wired Geräte
HB-RF-ETH
Alexa Anbindung
Node-Red