Datum per IF-Abfrage prüfen!



  • Hallo!

    Hatte folgendes versucht:

    if(DateToStr(Date()) <= "31.12.2006")
      ShowMessage("Altes Jahr");
    else
      ShowMessage("Neues Jahr");
    

    Leider bringt er mir immer altes Jahr, auch wenn ich das Datum auf z. B. 02.05.2007 einstelle.

    Kann ich ein DateToStr nicht vergleichen oder warum funktioniert es nicht?

    Gruß

    Maik



  • Hi,

    was hat DateToStr für einen Datentyp als Rückgabewert? Überlege mal was passiert, wenn Du zwei Variablen mit diesem Datentyp mit > oder < oder == vergleichst ....

    Jochen



  • Hallo

    if(Date() <= StrToDateTime("31.12.2005"))
      ShowMessage("Altes Jahr");
    else
      ShowMessage("Neues Jahr");
    

    bis bald
    akari



  • Hallo,

    Du vergleichst hier zwei Strings und kein Datum. Da eine '2' kleiner als '3' ist, ist die Bedingung erfüllt. Vergleiche lieber zwei TDateTime-Objekte.

    if(Date() <= TDateTime("31.12.2006"))
      ShowMessage("Altes Jahr");
    else
      ShowMessage("Neues Jahr");
    

    Das klappt natürlich nur, wenn der String konvertiert werden kann.


Anmelden zum Antworten