[gelöst] at um bei KW Wechsel einen Wert in einen dummy zu schreiben

Begonnen von Kohle77, 10 Juni 2021, 11:36:59

Vorheriges Thema - Nächstes Thema

Kohle77

Hello Leute,
ich bräuchte mal wieder eure Hilfe. Ich wollte gerne immer am Kalenderwochenwechsel etwas ausführen.
Wollte dazu ein at nutzen das um 23:50 jeden Tag folgendes prüft:
Ich habe ein ReadingOld in dem die vergangene KW steht.
Wenn also ReadingOld == (Aktuelle KW-1) soll die aktuelle KW in das ReadingOld geschrieben werden und eben die andere Aktion ausgeführt werden. Soweit so gut aber das funktioniert nicht beim Jahreswechsel da sagen wir mal ReadingOld dann ja 52 wäre und die aktuelle KW 1.
Dann gibt es auch Jahre mit 53 KWs.
Irgendwie bringe ich es nicht hin das in etwas zu packen.

Hat jemand eine Idee?
Hmm mir fällt grad auf das es so ja auch immer erst Montag Abend geprüft wird aber das lässt sich ja leicht beheben wenn man statt 23:59 eben 00:01 nimmt.

Gruß
Christian

Beta-User

Vielleicht hilft
{$wday}?
Sollte man um 23:59 auf "== 6" prüfen können ;) .

Oder gleich statistics (Modul?) (Das kann aber nicht wochenweise).
Server: HP-elitedesk@Debian 12, aktuelles FHEM@ConfigDB | CUL_HM (VCCU) | MQTT2: ZigBee2mqtt, MiLight@ESP-GW, BT@OpenMQTTGw | ZWave | SIGNALduino | MapleCUN | RHASSPY
svn: u.a Weekday-&RandomTimer, Twilight,  div. attrTemplate-files, MySensors

Kohle77

Hi,
danke erstmal.
{$wday}
ist zumindest mal noch eine Idee leider ist dieses Jahr der 31.12.2021 ein Freitag und der erste erste in 2022 ein Samstag.
Wenn ich also auf ==6 prüfe und schaue mir 2022 an da ist der 31.12.2022 ein Samstag. Passt also auch irgendwie nicht.
2026 hat das Jahr wieder 53 Wochen.
Jedes Jahr, das kein Schaltjahr ist oder dessen 31. Dezember kein Sonntag ist, hat 53 Kalenderwochen.
Denke grade darüber nach den Tag des Jahres durch 7 zu teilen aber das wäre gleich mit wday.

Gruß
Christian

Otto123

Hallo Christian,

Kalenderwoche ist doch ein gern diskutiertes Thema in FHEM. Wenn Du mal so googelst:
site:forum.fhem.de kalenderwoche

Das war glaube ich nicht klar zu erkennen, dass der Hauptfocus auf Kalenderwoche liegt :)

Gruß Otto
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz

Beta-User

Na ja, wenn es wirklich hart um die Kalenderwochen gehen und das dann auch über den Jahreswechsel passen soll, dann wäre ggf. die Frage, ob man nicht alle "Sylvester-Aktionen" in ein eigenes at packt, das dann am 31.12. (insgesamt) den Jahresabschluss macht (für die KW-Readings aber nur, wenn nicht grade $wday == 6)...

Ansonsten: gäbe es auch noch "ne" oder "!="; da ist es egal, ob der alte Wert größer, kleiner oder undef ist ;) .
Server: HP-elitedesk@Debian 12, aktuelles FHEM@ConfigDB | CUL_HM (VCCU) | MQTT2: ZigBee2mqtt, MiLight@ESP-GW, BT@OpenMQTTGw | ZWave | SIGNALduino | MapleCUN | RHASSPY
svn: u.a Weekday-&RandomTimer, Twilight,  div. attrTemplate-files, MySensors

Kohle77

Hallo Otto und Beta-User,
zunächst ist mir eine Lösung eingefallen. Manchmal ist es echt schwer etwas verständlich zu Beschreiben.
Zu meiner Lösung die ich mir überlegt habe.
Ich muss ja eigentlich nur prüfen ob mein ReadingOld (das ich einmal con Hand befülle) != der aktuellen Kalenderwoche sein und wenn das so ist schreibe die aktuelle KW in ReadingsOld und führt die zweite Aktion auch aus.

Otto ich muss nochmal blöd Fragen. Was mach ich damit?
site:forum.fhem.de kalenderwoche
Das im Suchfenster eingeben? Im Browser?

Gruß
Christian

Beta-User

Das war für die Suchmaschine deiner Wahl...

Wenn ich mir aber https://forum.fhem.de/index.php/topic,87236.msg1118148.html#msg1118148 ansehe, scheint da die Kalenderwoche auch über den Jahreswechsel raus stehen zu bleiben. Dann braucht man wirklich ein at_ultimo()-at (Funktion ist in cref zu at zu finden).

Server: HP-elitedesk@Debian 12, aktuelles FHEM@ConfigDB | CUL_HM (VCCU) | MQTT2: ZigBee2mqtt, MiLight@ESP-GW, BT@OpenMQTTGw | ZWave | SIGNALduino | MapleCUN | RHASSPY
svn: u.a Weekday-&RandomTimer, Twilight,  div. attrTemplate-files, MySensors

Otto123

Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz