So, liebe Leute, ich hab mal etwas für diejenigen, die Code reviewen möchten:
Situation:
Ich möchte eine Wochentags- und zeitabhängige Verabschiedung in meinen Mails haben, die folgender Bedingung folgt:
montags bis donnerstags:
00:00 Uhr bis 03:59 Uhr: eine angenehme Nacht!
04:00 Uhr bis 17:59 Uhr: einen schönen Tag!
18:00 Uhr bis 23:59 Uhr: einen schönen Abend!
freitags:
00:00 Uhr bis 03:59 Uhr: eine angenehme Nacht!
04:00 Uhr bis 12:29 Uhr: einen schönen Tag!
12:30 Uhr bis 23:59 Uhr: ein schönes Wochenende!
samstags:
00:00 Uhr bis 23:59 Uhr: ein schönes Wochenende!
sonntags:
00:00 Uhr bis 17:59 Uhr: ein schönes Wochenende!
18:00 Uhr bis 23:59 Uhr: einen schönen Abend!
Ich habe mir folgendes Makro überlegt:
%REM('==================================================')%-
%REM('=== Wochenende oder nicht, falls ja, welcher Tag')%-
%REM('==================================================')%-
%IF("%DATE('ddd')"="Fr", %_WOE=1, %-
%IF("%DATE('ddd')"="Sa", %_WOE=2, %-
%IF("%DATE('ddd')"="So", %_WOE=3, %-
%_WOE=0)))%-
%-
%REM('==================================================')%-
%REM('=== Tageszeit ermitteln')%-
%REM('==================================================')%-
%IF("%TIME('hh:mm:ss')"=>"00:00:00", %IF("%TIME('hh:mm:ss')"<="03:59:59", %_DYT=0, %-
%IF("%TIME('hh:mm:ss')"=>"04:00:00", %IF("%TIME('hh:mm:ss')"<="12:29:59", %_DYT=1, %-
%IF("%TIME('hh:mm:ss')"=>"12:30:00", %IF("%TIME('hh:mm:ss')"<="17:59:59", %_DYT=2, %-
%IF("%TIME('hh:mm:ss')"=>"18:00:00", %IF("%TIME('hh:mm:ss')"<="23:59:59", %_DYT=3, %-
%_DYT=-1))))))))%-
%-
%REM('==================================================')%-
%REM('=== Richtige Verabschiedung ermitteln')%-
%REM('==================================================')%-
%IFN("%_WOE"="0", %-
%IF("%_DYT"="0", %_BYE='eine angenehme Nacht!', %-
%IF("%_DYT"="1", %_BYE='einen schönen Tag!', %-
%IF("%_DYT"="2", %_BYE='einen schönen Tag!', %-
%_BYE='einen schönen Abend!'))), %-
%-
%IFN("%_WOE"="1", %-
%IF("%_DYT"="0", %_BYE='eine angenehme Nacht!', %-
%IF("%_DYT"="1", %_BYE='einen schönen Tag!', %-
%_BYE='ein schönes Wochenende!')), %-
%-
%IFN("%_WOE"="3", %-
%IF("%_DYT"="3", %_BYE='einen schönen Abend!', %-
%_BYE='ein schönes Wochenende!'), %-
%_BYE='ein schönes Wochenende!')))%-
%-
%REM('==================================================')%-
%REM('=== Die generierte Verabschiedung')%-
%REM('==================================================')%-
Vielen Dank - weiterhin %_BYE
%-
%-
%REM('==================================================')%-
%REM('=== debuggen HIER!')%-
%REM('==================================================')%-
-----------------------------------
Wochende: '%_WOE'
DayTime: '%_DYT'
Gruss: '%_BYE'
-----------------------------------
Datum: %DATE('dddd, dd. MMMM YYYY')
Uhrzeit: %TIME('hh:mm:ss')
-----------------------------------
Alles anzeigen
Die letzten Zeilen sind muß debuggen, denn es funktioniert nicht so, wie ich es haben will. Meine Ausgabe sieht so aus:
ZitatAlles anzeigenVielen Dank - weiterhin
-----------------------------------
Wochende: 0
DayTime: 3
Gruss:
-----------------------------------
Datum: Donnerstag, 19. September 2013
Uhrzeit: 18:04:51
-----------------------------------
Zu Erläuterung: ich starte The Bat! in einer Testumgebung mit änderbarem Datum, die es mir gestattet, Datum und Uhrzeit ohne Änderung der Systemzeit zu starten.
Aber ich kriege keine Ausgabe bei der Grußformel, die in der Variable %_BYE stecken sollte.
Ich finde einfach nicht den Fehler.
Vielleicht siehst Du ihn? Dann schreibs doch bitte mal hier auf.