Datensatz hinzufügen geht nicht



  • Ich glaube die Reihenfolge is falsch:

    void Dilog::OnHinzufuegen() 
    { 
    UpdateData(TRUE); 
    
    m_pView->GetDocument()->AddNew(); // der war unten
    
    m_pView->m_strLastName = m_strLastName; 
    m_pView->m_strFirstName = m_strFirstName; 
    m_pView->m_strAge = m_strAge; 
    
    m_pView->UpdateBoundData(); // Versuch mal nur m_pView->Update(); stattdessen
    }
    

    Sieht jedenfalls in der MSDN von den Befehlen her aus wie CRecordset. 🙂



  • m_pView ist ein Zeiger auf die View Klasse



  • sorry habs erst jetz gelesen
    Error 'Update' : Ist kein Element von 'CAdoDatabaseView'
    auch wenn ich TRUE reinschreiben gehts noch nicht



  • das Problem ist dass erst wenn ich von hand schon vorher was in die Datenbank reingeschrieben habe, daten hinzufügen kann, dann klappts auch
    aber wen meine Datenbanktabelle leer ist gehts net, dann kommt der fehler



  • 😮 CAdoDatabaseView gibt es in meiner MSDN nicht!

    Okay, dann lass es bei dem Befehl, den du da hattest. Das "Umsetzen" von AddNew war ja viel interessanter. Was kommt dabei heraus?



  • [code]void CAdoDatabaseDoc::AddNew()
    {

    try
    {
    // Aktuellen Datensatz aktualisieren ( haben die so gemacht
    // muss weg sonst geht gar nichts
    //m_piAdoRecordBinding->Update(&m_rsRecSet);

    // Kann ein neuer Datensatz hinzugefügt werden?
    if (m_ptrRs->Supports(adAddNew))
    {

    // Leeren Datensatz hinzufügen
    m_piAdoRecordBinding->AddNew(&m_rsRecSet);

    //Leeren Datensatz erzeugen
    CreateBlankRecord();

    // Zum letzten Datensatz gehen
    m_ptrRs->MoveLast();

    }
    }

    // Fehler?
    catch (_com_error &e)

    {
    // Fehlermeldung generieren
    GenerateError(e.Error(), e.Description());
    }

    }



  • 😕 Passe 😞



  • kein Problem, aber trotzdem vielen dank für deine Mühen 👍



  • ich hätte da noch was anderes

    wenn ich in die masken nichts eingebe und auf "Hinzufügen "klicke, soll eine Meldung kommmen dass man zuerst was eingeben soll
    Wie würde man so etwas machen?
    thx



  • also ich glaube es stimmt schon was du gesagt hast, irgendwas mit dem Update stimmt nicht. Und zwar in der AddNew Funktion. Da fehlt ein Update. Weiß nur nicht wo ich das hinsetzen soll.


Anmelden zum Antworten