Datum umwandeln yyyy-mm-dd nach dd.mm.yyyy



  • Wie kann ich das datum der iso norm wieder in die vom BCB umwandeln?

    TDateTime DateValue = StrToDate(Date());
    ShortDateFormat = "yyyy-MM-dd";
    

    x=DateValue;
    So bekomm ich das Datum in die ISO Form.

    TDateTime DateValue = StrToDate(x);
    ShortDateFormat = "dd.MM.yyyy";
    

    so bekomm ich den fehler das x kein richtiges Datumsformat ist.
    Kann mir da jemand helfen?

    Schönen Abend noch
    Hanni



  • Wiso machst du es nicht einfach so?

    UnicodeString sIsoFormat;
    UnicodeString sDateFormat;
    
    sIsoFormat = DateValue.FormatString("yyyy-MM-dd");
    sDateFormat = DateValue.FormatString("dd.MM.yyyy");
    

    Sollte zumindest so gehen.



  • nunja so komme ich auch nicht viel weiter, ich will wenn man eine Zeile in der Tabelle anklickt, dass der jeweilige Tag im Kalender angezeigt wird.

    TDateTime DateValue = StrToDate(DBGrid2->SelectedField->AsString);
    String sDateFormat;
    sDateFormat = DateValue.FormatString("dd.MM.yyyy");
    MonthCalendar1->Date= sDateFormat;
    

    In der Tabelle steht das Datum in yyyy-MM-dd Form welche aber nicht mit DateTime funktioniert.

    Kannst du mir da weiterhelfen?
    Danke
    Hanni



  • MonthCalendar1->Date = DBGrid2->SelectedField->AsDateTime;
    

    Wenn es so nicht geht, einfach über das Query-Objekt gehen.



  • Killer-Kobold schrieb:

    MonthCalendar1->Date = DBGrid2->SelectedField->AsDateTime;
    

    Wenn es so nicht geht, einfach über das Query-Objekt gehen.

    Dann kommt folgender Fehler, da ja das falsche Format vorliegt.
    '2009-06-15' ist keine gültige Datums- und Uhrzeitangabe.



  • Was für ein Feldtyp ist es denn in der Datenbank?
    Etwa char? Wenn ja, warum speicherst du Datumswerte in einem char?

    Gruß KK



  • Nein, es ist ein Date Feld



  • Dann verstehe ich das nicht.
    Welches Query-Objekt ist mit dem DBGrid verbunden?
    Was passiert, wenn Du direkt aus dem Query-Objekt den Wert als DateTime abfragst? Kommt dann auch diese Fehlermeldung?



  • Es ist ein Zeos Query.
    Hm, die Fehlermeldung kommt nur wenn der Feldtyp date ist, nicht wenn er char ist.



  • Habe das Problem auch gehabt aber mit MonthCalender.
    Habe das so gelöst, in der DatenBank muss Feldtyp date oder DateTime sein.

    ...
    // vorher dvon: 01.01.2009
    dvon = FormatDateTime("YYYY-MM-DD",dvon);
    dbis = FormatDateTime("YYYY-MM-DD",dbis);
    ...
    // nachher dvon: 2009-01-01
    

    Sollte keineMeldung kommen.


Anmelden zum Antworten