%ws_isdaynight=Tag,Morgendämmerung,Abenddämmerung,Nacht%
Hier ist entscheidend, dass die Variable aus zwei Teilen besteht:
Was geschieht nun, wenn diese Variable abgearbeitet wird?
Je nach Tageszeit wird eine unterschiedliche Textmeldung ausgegeben:
Tag, Morgendämmerung, Abenddämmerung, oder Nacht
Nun kommt der entscheidende Punkt:
Diese vier Angaben können vom Benutzer selbst gestaltet werden, also beispielsweise:
%ws_isdaynight=guten Tag,es dämmert gerade,bald wird es Zeit fürs Bett,gute Nacht%
Wenn nun die Datei gerade abends um 23:00 Uhr abgearbeitet wird, erscheint auf dem Bildschirm "gute Nacht", wird sie dagegen vormittags um 10:00 Uhr erstellt, erscheint "guten Tag".
Zusammenfassend kann man es sich so vorstellen:
Ursprungscode | vom Benutzer veränderter Code | Ergebnis (abhängig v. Situation) |
%ws_isdaynight=Tag,Morgendämmerung,Abenddämmerung,Nacht% | %ws_isdaynight=guten Tag,hallo Morgenmuffel,Kinder jetzt ins Bett,eine gute Nacht% | hallo Morgenmuffel |
%ws_icewarning=Ja,Nein% | %ws_icewarning=Glatteis möglich,keine Glatteisgefahr% | keine Glatteisgefahr |
Es gibt hier noch einige wesentliche Dinge zusätzlich zu beachten (Komma als Trennzeichen erforderlich - Parameter können auch htmCode sein usw.), bitte hier dringend die Hilfedatei des Programms ansehen.
Dennoch soll auf die zwei häufigsten Fehler bereits hier hingewiesen werden:
Seit der Version 2.8.3.0 gibt es neue Variablenarten, die die Möglichkeiten des Programms ganz entscheidend erweitern.
Es sind dies Variablen
Dies soll in der nachfolgenden Tabelle verdeutlicht werden:
Hier ist zu beachten, dass als Trennzeichen der Parameter die Tilde (~) verwendet wird.
Variable zur Berechnung | vom Benutzer einstellbar | Bedeutung | |||
%ws_calc[x]=w1~w2~Dez% oder %ws_calc1[x]=w1~w2~Dez% |
Für den Parameter x können nun Rechenoperationen gewählt werden: [+] oder [-] oder [*] oder [/] |
w1 = 1.Wert, w2 = 2.Wert Dez= Zahl der Kommastellen Dabei können w1 und w2 entweder echte Zahlen oder Variable sein |
|||
Wozu ist die 2. Variable ws_calc1 ? Sie wird benötigt, wenn in einer Zeile zwei Berechnungen erfolgen sollen, also z.B. Bildung einer Summe und dann die Durchschnittsermittlung. Ich verwende im Nachfolgenden ein Beispiel aus der Hilfedatei des Programms: |
|||||
was soll erreicht werden | Variable | Erklärung | |||
aus zwei Temperaturen (Sensor 1 und Sensor 2) soll zuerst die Summe gebildet und dann der Durchschnitt errechnet werden | %ws_calc1[/]=%ws_calc[+]=%curval[2]%~%curval[3]%~3%~2~3% |
roter Teil:
grüner Teil:
|
|||
praktisches Beispiel
|
ergibt | ||||
%ws_calc[-]=%curval[2]%~%curval[3]%~2% | Temperaturdifferenz von Aussensensor 1 und Aussensensor2 auf 2 Dezimalstellen genau wenn curval[2]=15°C und curval[3]=12°C erscheint als Ergebnis 3,00 |
||||
|
Variable zum Vergleich | vom Benutzer einstellbar | Bedeutung |
%ws_compare[x]=w1~w2~richtig~falsch% | Hier bedeutet: x=1: Wert1 > Wert2 x=2:Wert1 >= Wert2 x=3: Wert1 = Wert2 x=4: Wert1 <= Wert2 x=5: Wert1 < Wert2 x=6: Wert1 <> Wert2 |
Wenn der Vergleich zutrifft, wird der Text ausgegeben, der bei "richtig" steht, ist der Vergleich nicht zutreffend, wird der Text bei "falsch" ausgegeben. |
praktisches Beispiel
|
ergibt | |
%ws_compare[1]=%curval[2]%~%curval[3]%~Temp. AußenNord ist höher als AußenSüd~Temp. AußenNord ist niedriger als AußenSüd% | bei TempNord 7,5°C und TempSüd 6,1°C --> Temp. AußenNord ist höher als AußenSüd bei TempNord 4,5°C und TempSüd 5,1°C --> Temp. AußenNord ist niedriger als AußenSüd |
|
Nutzen dieser Variablenart: zwei Variablen werden miteinander verglichen und je nach Vergleich wird unterschiedlicher Text ausgegeben. Bitte beachten: Wert1 und Wert2 müssen Zahlenwerte darstellen (echte Zahlen oder Variable, aber keinen Text) Ausnahme: Der Vergleich auf "ungleich" (x=6) erlaubt für den 2. Parameter auch andere Werte (z.B. Text), doch Parameter 1 muss eine Zahl sein (z.B. -255) |
Variable zur Speicherung | vom Benutzer einstellbar | Bedeutung |
%ws_setmem[x]=zzzzz% | Für den Parameter x können Werte von 1 - 32 gewählt werden |
zzzzzz können Variable oder auch Text sein. Diese Variable macht nur Sinn im Zusammenhang mit der Variablen %ws_getmem[x]% |
praktisches Beispiel
|
ergibt | |
%ws_setmem[1]=heute scheint die Sonne% | ||
%ws_getmem[1]% | heute scheint die Sonne | |
Hier stehen dem Benutzer insgesamt 64 Speichervariablen zur Verfügung. Nutzen diese Variablenart: Es kann also jede Menge Variablen (vor allem aus templates) zwischengespeichert werden und in einer anderen Datei (z.B. custom.txt) ausgegeben werden. Dazu gibt es noch eine Besonderheit: |
||
%ws_getmem_yest% | entsprechend steht die Variable für Woche, Monat, Jahr zur Verfügung , z.B. %ws_getmem_y% | es wird abgefragt, ob das Yesterdaytemplate (template_yest.txt) seit Programmstart bereits abgearbeitet wurde |
Weitere Anwendungsbeispiele zu dieser neuen Variablenart sind hier zu finden.