Datenbankbeispiel 2


Einleitung

Um diese Anleitung nicht zu lang werden zu lassen, schreibe ich immer nur die Dinge auf, die verändert werden müssen. Bei Codeabschnitten werden die Teile, die von mir verändert wurden fett geschrieben.

Beispiel

Aufgabe

Suchen Sie mit dem Explorer die MS-Beispieldatenbank "Nordwind". Es kann sein, dass diese nicht installiert ist.

Erstellen Sie ein Programm, welches in eine Listbox eines Dialoges von den Sätzen der Tabelle "Artikel" die Felder "Artikelnummer" und "Artikelname" einträgt.

Lösung in Prosa

  1. Zuerst einmal ein neues Projekt anlegen:
  2. Zeichnen des Dialogs:
    Es wird nur ein Listenfeld gebraucht.
  3. Nun müssen nur noch die Eingabefelder mit den Feldern in der Datenbank verbunden werden.
    Dazu muss der Klassenassistent geöffnet werden.
  4. Nun muss die Listbox noch mit den Daten befüllt werden. Dies muss in einer Funktion geschehen, die gleich am Anfang des Programms aufgerufen wird. Dazu ist die Methode "OnInitialUpdate" in der View am Besten geeignet.
    void CDb2View::OnInitialUpdate()
    {
    	m_pSet = &GetDocument()->m_db2Set;
    	CRecordView::OnInitialUpdate();
    	GetParentFrame()->RecalcLayout();
    	ResizeParentToFit();
    
    	// Wird für die Formatierung des Strings gebraucht
    	CString zwsp;
    	// Auf erste Position setzen
    	m_pSet->MoveFirst();
    	while (!m_pSet->IsEOF())
    	{
    		zwsp.Format("%d, %s",m_pSet->m_Artikel_Nr,m_pSet->m_Artikelname);
    		m_list.AddString(zwsp);
    		m_pSet->MoveNext();
    	}
    }
      	    
  5. Fertig