Season-Variablen

Fragen, Anregungen zur PC-Wetterstations-Software

Moderatoren: Werner, Tex, weneu

Antworten
Heiko

Season-Variablen

Beitrag von Heiko »

Hallo Wetterfreunde,

wie schon erwähnt, bin ich gerade dabei meine Wetterseite neu zu gestalten.
Ich möchte gern die Season- Variablen nutzen, auch kein Problem, aber kann man nicht mit den Variablen für die Jahreszeiten arbeiten, also dass man nicht jedesmal handisch ändern muss ?

Danke für Eure Mühe.
Benutzeravatar
weneu
Site Admin
Beiträge: 11572
Registriert: 22 Feb 2002 01:00
Wohnort: Donauwörth
Danksagung erhalten: 18 mal
Kontaktdaten:

Beitrag von weneu »

Hallo,
die Frage ist für mich unverständlich formuliert.
aber kann man nicht mit den Variablen für die Jahreszeiten arbeiten,
Was verstehst Du darunter?
stuggi
Beiträge: 155
Registriert: 12 Dez 2006 23:06

Re: Season-Variablen

Beitrag von stuggi »

Heiko hat geschrieben: aber kann man nicht mit den Variablen für die Jahreszeiten arbeiten, also dass man nicht jedesmal handisch ändern muss ?
Hallo Heiko,

Ich verstehe dich so:
du meinst es ändert sich automatisch, also das datum in der Variable bleibt immer gleich. Daher muss es sozusagen alle 3 Monate geändert werden.

Code: Alles auswählen

%season_min[0~01122009~28022010]%
Das einzigste was mit den season auch interessant ist , sind Summen bis heute im Jahresvergleich:

Code: Alles auswählen

%season_sum[34~01012010~%ws_day2%%ws_month2%0000]% mm
Tip:
wenn du in einem template alle 4 Jahreszeiten und dazu auch noch mehrere Jahre verbaust, dann verwene das template_season.txt dazu.

@Werner,
wie man am besten das ganze mit der ws_store.cfg löst win ich auch noch nicht dahintergekommen?
Ein praktischer tipp wäre nicht schlecht.

Grüße Chris
joergeli
Beiträge: 669
Registriert: 30 Aug 2006 17:32
Wohnort: 61279 Grävenwiesbach (Hessen)
Kontaktdaten:

Beitrag von joergeli »

Hallo,

ich nehme an, Heiko meint die neuen Variablen Frühlings-, Sommer-, Herbst- und Winteranfang ?

Hmmm..., müsste theoretisch möglich sein:
Sommeranfang - Frühlingsanfang = Frühling
Herbstanfang - Sommeranfang = Sommer
Winteranfang - Herbstanfang = Herbst

evtl. problematisch (weil Jahreswechsel dazwischen):
Frühlingsanfang - Winteranfang = Winter

also im Prinzip so:

Code: Alles auswählen

Frühlings-Min: %season_min[0~Frühlingsanfang~Sommeranfang]%
Diese Variablen müssten aber noch ein wenig "zurechtgestutzt" werden,
damit sie zusammen mit der Season-Variablen genutzt werden können.
Enthaltene Uhrzeit (mit cutstr) entfernen und Monatsnamen in 2stellige Monatsbezeichnung umwandeln, etc.

Gruß
Jörg
http://www.joergeli.de
WS 2500PC V3.1 mit Superhet-Empfänger HFS302, WsWIN V2.98.7
WS 3001, 2xWS1000, WS2000, WS2500
Wetterstation Heinzenberg/Taunus
Heiko

Beitrag von Heiko »

Hallo Wetterfeunde,

erst einmal vielen Dank für die schnellen Antworten, ich meine es fast so wie Jörg es darstellt.
Mein Gedanke dabei ist, für die Jahreszeiten die entsprechenden Werte auszugeben.
z.B.
%season_max[0~21122009~20032010]% um %season_maxtime[0~21122009~20032010]% am %season_maxdate[0~21122009~20032010]%

und das jeweilige eingetragene Datum durch diese Variablen

%ws_spring%,
%ws_summer%,
%ws_autumn% und
%ws_winter%

zu ersetzen, damit ich nicht mehrmals im Jahr händisch eingreifen muss.

Danke für die Mühe
joergeli
Beiträge: 669
Registriert: 30 Aug 2006 17:32
Wohnort: 61279 Grävenwiesbach (Hessen)
Kontaktdaten:

Beitrag von joergeli »

Hallo Heiko,

ich habe das Ganze mal auf die Schnelle für die Tmax im Frühling durchgespielt.
Dieses Beispiel funktioniert aber nur, wenn man bei Aufruf des Templates in der WsWIN-Ansicht ein Datum des Vorjahres (oder älter) gewählt hat,
weil wir ja z.Zt. noch Winter haben.

Ich habe bewußt den Frühling gewählt, da - wie schon in meinem ersten Posting erwähnt - es komplizierter wird,
wenn man die Tmax im Winter ermitteln will, da ja z. Zt. (11.02.2010) der Winteranfang des Vorjahres (2009) benötigt wird,
die Variable %ws_winter% aber bereits den Winteranfang für 2010 ausgibt.
Somit müsste man das Jahr, welches %ws_winter% ausgibt, noch nach 2009 umwandeln.
Das ist auch nicht weiter schwierig, nur zwischen dem 22.12.2010 (Winteranfang 2010) und dem 31.12.2010
darf das Jahr dann nicht mehr umgewandelt werden, da ja dann der "neue" Winter angefangen hat.

Das ist sicherlich auch via entspr. Code (wenn aktuelles Datum < Winteranfang aktuelles Jahr, dann Jahr=Jahr-1, sonst Jahr=aktuelles Jahr) realisierbar,
wird mir jetzt aber - mit Verlaub - zu kompliziert, zumal ich vorhin schon 2 Stunden lang Schnee geschaufelt habe :wink:

Evtl. versucht sich aber noch jemand anderes daran, oder Du hoffst, dass Werner (Krenn) mitliest und evtl. in einer neuen WsWIN-Version
neue Variablen "Season_Winter", "Season_Spring", etc. einbaut :wink:

Code: Alles auswählen

Frülingsanfang&#58; %ws_spring%
Sommeranfang&#58; %ws_summer% 

______________________________________________________
### Nur Datum von Frühlingsanfang ausgeben&#58; ### 
%ws_setmem&#91;1&#93;=%ws_cutstr=1~24~%ws_spring%%%        #Uhrzeit und &nbsp; entfernen
%ws_setmem&#91;1&#93;=%ws_replacestr=.~~%ws_getmem&#91;1&#93;%%%   #Punkt entfernen
%ws_setmem&#91;1&#93;=%ws_replacestr= ~~%ws_getmem&#91;1&#93;%%%   #Leerzeichen entfernen
#Monatsnamen umwandeln&#58;
%ws_setmem&#91;1&#93;=%ws_replacestr=Januar~01~%ws_getmem&#91;1&#93;%%%
%ws_setmem&#91;1&#93;=%ws_replacestr=Februar~02~%ws_getmem&#91;1&#93;%%%
%ws_setmem&#91;1&#93;=%ws_replacestr=März~03~%ws_getmem&#91;1&#93;%%%
%ws_setmem&#91;1&#93;=%ws_replacestr=April~04~%ws_getmem&#91;1&#93;%%%
%ws_setmem&#91;1&#93;=%ws_replacestr=Mai~05~%ws_getmem&#91;1&#93;%%%
%ws_setmem&#91;1&#93;=%ws_replacestr=Juni~06~%ws_getmem&#91;1&#93;%%%
%ws_setmem&#91;1&#93;=%ws_replacestr=Juli~07~%ws_getmem&#91;1&#93;%%%
%ws_setmem&#91;1&#93;=%ws_replacestr=August~08~%ws_getmem&#91;1&#93;%%%
%ws_setmem&#91;1&#93;=%ws_replacestr=September~09~%ws_getmem&#91;1&#93;%%%
%ws_setmem&#91;1&#93;=%ws_replacestr=Oktober~10~%ws_getmem&#91;1&#93;%%%
%ws_setmem&#91;1&#93;=%ws_replacestr=November~11~%ws_getmem&#91;1&#93;%%%
%ws_setmem&#91;1&#93;=%ws_replacestr=Dezember~12~%ws_getmem&#91;1&#93;%%%
#Frühlingsanfang &#40;nur Datum&#41;&#58; %ws_getmem&#91;1&#93;%
%ws_setmem&#91;3&#93;=%ws_getmem&#91;1&#93;%%    #nur deshalb, weil in einer Ausgabezeile nicht mehrfach ws_getmem&#91;1&#93; verwendet werden kann
%ws_setmem&#91;5&#93;=%ws_getmem&#91;1&#93;%%    #nur deshalb, weil in einer Ausgabezeile nicht mehrfach ws_getmem&#91;1&#93; verwendet werden kann
______________________________________________________

####### Nur Datum von Sommeranfang ausgeben&#58; #######
%ws_setmem&#91;2&#93;=%ws_cutstr=1~24~%ws_summer%%%        # Uhrzeit und &nbsp; entfernen
%ws_setmem&#91;2&#93;=%ws_replacestr=.~~%ws_getmem&#91;2&#93;%%%   # Punkt entfernen
%ws_setmem&#91;2&#93;=%ws_replacestr= ~~%ws_getmem&#91;2&#93;%%%   # Leerzeichen entfernen
#Monatsnamen umwandeln&#58;
%ws_setmem&#91;2&#93;=%ws_replacestr=Januar~01~%ws_getmem&#91;2&#93;%%%
%ws_setmem&#91;2&#93;=%ws_replacestr=Februar~02~%ws_getmem&#91;2&#93;%%%
%ws_setmem&#91;2&#93;=%ws_replacestr=März~03~%ws_getmem&#91;2&#93;%%%
%ws_setmem&#91;2&#93;=%ws_replacestr=April~04~%ws_getmem&#91;2&#93;%%%
%ws_setmem&#91;2&#93;=%ws_replacestr=Mai~05~%ws_getmem&#91;2&#93;%%%
%ws_setmem&#91;2&#93;=%ws_replacestr=Juni~06~%ws_getmem&#91;2&#93;%%%
%ws_setmem&#91;2&#93;=%ws_replacestr=Juli~07~%ws_getmem&#91;2&#93;%%%
%ws_setmem&#91;2&#93;=%ws_replacestr=August~08~%ws_getmem&#91;2&#93;%%%
%ws_setmem&#91;2&#93;=%ws_replacestr=September~09~%ws_getmem&#91;2&#93;%%%
%ws_setmem&#91;2&#93;=%ws_replacestr=Oktober~10~%ws_getmem&#91;2&#93;%%%
%ws_setmem&#91;2&#93;=%ws_replacestr=November~11~%ws_getmem&#91;2&#93;%%%
%ws_setmem&#91;2&#93;=%ws_replacestr=Dezember~12~%ws_getmem&#91;2&#93;%%%
#Sommeranfang &#40;nur Datum&#41;&#58; %ws_getmem&#91;2&#93;%
%ws_setmem&#91;4&#93;=%ws_getmem&#91;2&#93;%%  #nur deshalb, weil in einer Ausgabezeile nicht mehrfach ws_getmem&#91;2&#93; verwendet werden kann
%ws_setmem&#91;6&#93;=%ws_getmem&#91;2&#93;%%  #nur deshalb, weil in einer Ausgabezeile nicht mehrfach ws_getmem&#91;2&#93; verwendet werden kann
______________________________________________________


#Ergebnis &#40;Tmax im Frühling&#41;&#58;
%season_max&#91;0~%ws_getmem&#91;1&#93;%~%ws_getmem&#91;2&#93;%&#93;% um %season_maxtime&#91;0~%ws_getmem&#91;3&#93;%~%ws_getmem&#91;4&#93;%&#93;% am %season_maxdate&#91;0~%ws_getmem&#91;5&#93;%~%ws_getmem&#91;6&#93;%&#93;% 

(Hinweis: die letzte Zeile wurde durch die Forumsdarstellung umgebrochen)

Gruß
Jörg
Zuletzt geändert von joergeli am 19 Feb 2010 09:02, insgesamt 1-mal geändert.
http://www.joergeli.de
WS 2500PC V3.1 mit Superhet-Empfänger HFS302, WsWIN V2.98.7
WS 3001, 2xWS1000, WS2000, WS2500
Wetterstation Heinzenberg/Taunus
Heiko

Beitrag von Heiko »

Hallo Jörg,

ich staune immer wieder was man mit diesem Programm alles machen kann und wie tief man sich einarbeiten müsste um alles zu verstehen. Da deine Ausführungen genau das treffen, was ich eigentlich vor hatte, aber für mich auf die Schnelle doch nicht umsetztbar ist, werde ich die Ausgabe der Jahreszeitendaten vorerst auf Eis legen, aber im Hinterkopf behalten und nebenher die verschiedenen Ausgaben bearbeiten.

Besten Dank für deine Mühe, auch nach 2 Stunden Schnee schieben !!! :wink: :wink:

Muss diese Variable
%ws_setmem[1]
einmalig in den Ausgaben sein oder soll sie fortlaufend benannt werden (%ws_setmem[1], %ws_setmem[2] usw.) ?
joergeli
Beiträge: 669
Registriert: 30 Aug 2006 17:32
Wohnort: 61279 Grävenwiesbach (Hessen)
Kontaktdaten:

Beitrag von joergeli »

Hallo Heiko,

Muss diese Variable %ws_setmem[1]
einmalig in den Ausgaben sein oder soll sie fortlaufend benannt werden (%ws_setmem[1], %ws_setmem[2] usw.) ?
In meinem Beispiel ( für den Frühling) braucht man nur die 2 Variablen %ws_setmem[1]=xx%, wo das Datum des Frühlingsanfangs zwischengespeichert wird und
die %ws_setmem[2]=xx%, welche das Datum des Sommeranfangs enthält.

Wenn Du jetzt im gleichen Template die Daten für z.B. den Sommer ermitteln willst, könntest Du ws_setmem[1] und ws_setmem[2] wieder analog verwenden, da das Template - sagen wir mal - von oben nach unten abgearbeitet wird, d.h. die Werte für den Frühling sind bereits ermittelt und somit sind die Variablen für den Sommer wieder "frei" bzw. benutzbar.

Nachtrag zum obigen Beispiel:
Evtl. habe diese Zeilen zur Verwirrung beigetragen ? :
%ws_setmem[3]=%ws_getmem[1]%%
%ws_setmem[5]=%ws_getmem[1]%%

%ws_setmem[4]=%ws_getmem[2]%%
%ws_setmem[6]=%ws_getmem[2]%%

Das habe ich nur gemacht, weil die einzeilige Ausgabe (obwohl von der Syntax richtig) so nicht funktioniert hat:
%season_max[0~%ws_getmem[1]%~%ws_getmem[2]%]% um %season_maxtime[0~%ws_getmem[1]%~%ws_getmem[2]%]% am %season_maxdate[0~%ws_getmem[1]%~%ws_getmem[2]%]%

Schreibt man das Ergebnis aber in mehrere Zeilen, funktioniert es:
Zeile 1: %season_max[0~%ws_getmem[1]%~%ws_getmem[2]%]
Zeile2: um %season_maxtime[0~%ws_getmem[1]%~%ws_getmem[2]%]%
Zeile3: am %season_maxdate[0~%ws_getmem[1]%~%ws_getmem[2]%]%

Gruß
Jörg
http://www.joergeli.de
WS 2500PC V3.1 mit Superhet-Empfänger HFS302, WsWIN V2.98.7
WS 3001, 2xWS1000, WS2000, WS2500
Wetterstation Heinzenberg/Taunus
Heiko

Beitrag von Heiko »

Hallo Wetterfreunde,

mit der Version V2.95.11 von WsWin hat Werner die von mir gesuchten Variablen "eingebaut".

%season_min[0~%ws_season_winter[2010]%]% um %season_mintime[0~%ws_season_winter[2010]%]% Uhr am %season_mindate[0~%ws_season_winter[2010]%]%

ergibt dann

-23,6 °C um 04:36 Uhr am 27.01.2010

leider kann man die Jahresangabe nicht verschachteln, weil ja der Winter schon im letzten Jahr (2009) anfing, aber trotzdem ein toller Service hier in diesem Forum.

Besten Dank an alle Beteiligten.

@ Jörg

Danke für den Hinweis !
ich74

Beitrag von ich74 »

hallo
du musst auch bei der variabel für [yyyy] nicht [2010] eintragen, sondern [0000] für das aktuelle jahr, [-001] für das vorjahr [-002] vorvorjahr usw.
also wäre [-001] der winter 09/10 und [0000] der winter 10/11 bei der season_winter variable.
gruß michael
Benutzeravatar
weneu
Site Admin
Beiträge: 11572
Registriert: 22 Feb 2002 01:00
Wohnort: Donauwörth
Danksagung erhalten: 18 mal
Kontaktdaten:

Beitrag von weneu »

Hallo Heiko,
der Hinweis von Michael wäre prinzipiell immer zu beachten. Es ist besser, hier keine konkreten Jahreszahlen einzugeben, obwohl das natürlich möglich ist.
Aber erstens müsstest Du dann ja jedes Jahr Änderungen durchführen und zweitens können sich unerwartete Effekte (wie bei Dir) ergeben.
Heiko

Beitrag von Heiko »

@ Michael und weneu

ja, nach nochmaligem probieren bin ich auch darauf gekommen.

Trotzdem Danke für die Hinweise.
Antworten