DATE



  • Ich habe ein Datentyp DATE denn möchte ich in Cstring formatieren und zwar so das ich Tag, Monat, Jahr
    Hat da jemand Erfahrungen ??????
    Danke



  • was soll das für ein datentyp sein ?
    Wo hast du ihn her ?

    Devil



  • SYSTEMTIME st;
    if( VariantTimeToSystemTime( deinDATE, &st ) ) {
        deinCString.Format( "%d.%d.%d", st.wDay, st.wMonth, st.wYear );
    }
    


  • Oder:

    COleDateTime dt( deinDATE);
    CString str = dt.Format("..."); // siehe MSDN
    


  • Moment ich verstehe einst nicht ganz, wenn ich so schreibe:
    m_dtErstellDatum(pRs->m_dtErstelldatum);
    sagt er error C2064: Ausdruck ergibt keine Funktion
    und ich mache eigentlich nicht als die Verbale m_dtErstellDatum global zu Deklarieren ??
    Wenn ich aber so schreibe
    COleDateTime dErstellDatum(pRs->m_dtErstelldatum);
    Dann geht ?
    Und noch was
    strErstelldatum = dErstellDatum.Format("%H:%M:%S %A, %B %d, %Y");
    m_Grid.SetItemText(nItem, 6, strErstelldatum);
    lauft alles super
    strErstelldatum = dErstellDatum.Format("%H:%M:%S %A, %B %d, %Y");
    strLetzteAend = dLetzteAend.Format("%H:%M:%S %A, %B %d, %Y");
    m_Grid.SetItemText(nItem, 7, strLetzteAend);
    m_Grid.SetItemText(nItem, 6, strErstelldatum);
    kein Compiler Fehler aber progi schmiert ab und zwar hier
    CString COleDateTime::Format(LPCTSTR pFormat) const
    {
    CString strDate;
    struct tm tmTemp;

    // If null, return empty string
    if (GetStatus() == null)
    return strDate;

    // If invalid, return DateTime resource string
    // Hier schmiert er ab
    if (GetStatus() == invalid || !_AfxTmFromOleDate(m_dt, tmTemp))
    {
    VERIFY(strDate.LoadString(AFX_IDS_INVALID_DATETIME));
    return strDate;
    }

    // Convert tm from afx internal format to standard format
    _AfxTmConvertToStandardFormat(tmTemp);

    // Fill in the buffer, disregard return value as it's not necessary
    LPTSTR lpszTemp = strDate.GetBufferSetLength(MAX_TIME_BUFFER_SIZE);
    _tcsftime(lpszTemp, strDate.GetLength(), pFormat, &tmTemp);
    strDate.ReleaseBuffer();

    return strDate;
    }



  • Ok also ich weis schon warum er brecht ab, und zwar weil in DB NULL steht
    Wie frage ich ColeDateTime ob in DB NULL steht ??



  • vielleich so
    if(!dLetzteAend.ParseDateTime(NULL,VAR_DATEVALUEONLY )){
    strLetzteAend="";
    }else strLetzteAend = dLetzteAend.Format("%c");



  • Oder so, daß meine Datumvariable ursprünglich von DATE kommt und es ist nichts anderes als ein double Wert
    //Überprüfen ob in DB NULL Wert steht
    if(pRs->m_dtLetzteAend <= NULL){
    strLetzteAend="";
    }else strLetzteAend = dLetzteAend.Format("%c");


Anmelden zum Antworten