Seite 1 von 1

Zahl 1-12 in Monatsnamen umwandeln

Verfasst: 29 Mär 2012 21:00
von ManfredK
Hallo,
Gibt es in wswin die Möglichkeit ohne ws_compare die Zahlen 1-12 in die Monatsnamen umzuwandeln?

Ich habe mir eine Monatsübersicht gebastelt, in der die letzten 12 Monate gegenübergestellt werden.
Nun müsste ich klarerweise in jeder Überschrift 12 Vergleiche anstellen, um mit der compare-Methode zum Ergebnis zu gelangen (glaube ich zumindest).

Vielen Dank für eure Unterstützung.

Verfasst: 29 Mär 2012 21:20
von ManfredK
Hallo,
Ich denke eine einfache Lösung gefunden zu haben.
Sollte es jemanden interessieren, werde ich die Lösung hier berichten.

Verfasst: 30 Mär 2012 07:33
von sulo1
ManfredK hat geschrieben:Hallo,
Ich denke eine einfache Lösung gefunden zu haben.
Sollte es jemanden interessieren, werde ich die Lösung hier berichten.
Deine Monatsübersicht gefällt mir sehr gut. Kannst du die Lösung mitteilen? Danke

Verfasst: 30 Mär 2012 07:49
von ManfredK
Hallo,
Freut mich, dass dir meine Monatsübersicht gefällt!
Auf allgemeinen Wunsch eines Einzelnen hier meine Lösung :D

Ich habe jeden Monatsnamen einer Variablen zugeordnet.

Code: Alles auswählen

%ws_setmem[1]=Jänner%
%ws_setmem[2]=Februar%
.
.
%ws_setmem[11]=November%
%ws_setmem[12]=Dezember%
Anschließend habe ich vom aktuellen Monat ausgehend, die Vormonate berechnet:

Code: Alles auswählen

%ws_setmem[21]=%ws_calc[-]=%ws_month%~1~0%%
%ws_setmem[21]=%ws_compare[3]=%ws_getmem[21]%~0~12~%ws_getmem[21]%%%
%ws_setmem[22]=%ws_calc[-]=%ws_getmem[21]%~1~0%%
%ws_setmem[22]=%ws_compare[3]=%ws_getmem[22]%~0~12~%ws_getmem[22]%%%
%ws_setmem[23]=%ws_calc[-]=%ws_getmem[22]%~1~0%%
%ws_setmem[23]=%ws_compare[3]=%ws_getmem[23]%~0~12~%ws_getmem[23]%%%
.
.
Nun hatte ich in den Variablen 21 bis 31 die Vormonate in numerischer Forme, und musste nur mehr in der Tabelle die Monatsnamen mit den Variablen 21 bis 31 einfügen:
aktuelles Monat:

Code: Alles auswählen

%ws_getmem[%ws_month%]%
Vormonate:

Code: Alles auswählen

%ws_getmem[%ws_getmem[21]%]%
%ws_getmem[%ws_getmem[22]%]%
.
.
Das richtige Jahr habe ich einfach so berechnet, dass ich gesagt habe, sobald die Monatszahl größer als die aktuelle Monatszahl ist, Jahr-1:

Code: Alles auswählen

%ws_compare[1]=%ws_getmem[21]%~%ws_month%~%ws_calc[-]=%ws_year%~1~0%~%ws_year%%
Ich hoffe das war halbwegs verständlich...