Veröffentlicht 15. August 200619 j Hi ich hab ein kleines Problem mit einer Liste. Ich habe eine Datenbank in der eine Menge Dokumente stehen. Diese Dokumente möchte ich je nach Kategorie in einer Liste (CListCtrl) anzeigen. Das Problem ist, dass ich die Dokumente in der Liste wieder der Datenbank zuordnen muss. (Wenn ich sie öffnen oder umbenennen will). Der Primärschlüssel ist aber nicht der Titel des Dokuments, sonder der Dateiname. Und der wird in der Liste nicht angezeigt weil er für den Benutzer unerheblich ist. Es steht nur der Titel und das Datum in der Liste in dem Dialog. Das wäre noch nicht so schwer, wenn ich die Dokumente in der Liste nicht noch nach Datum sorieren muss. Wenn ich das tue, weiß ich nicht wie ich ein Eintrag in der Liste einem Eintrag der Datenbank zuordnen soll. Gut wäre es, wenn ich für den Benutzer unsichtabr, den Primärschlüssel in die CListCtrl eintragen könnte. Geht so was? Oder habt Ihr da eine andere Idee? Grüße, Filou
15. August 200619 j hmm wenn du die Daten aus der Datenbank holst hast du doch ein Recordset wo alles drinsteht. Das müsstest du doch eigentlich schon sortieren können und dann füllst du deine Listbox mit den entsprechenden Daten und hast dann in der Listbox die selbe Reihenfolge der Daten wie im Recordset.
15. August 200619 j Hmmm.. Also wenn ich die Dateien aus der Tabelle der Datenbank auslese, werden sie nicht sortiert. Nach Datum werden sie über m_ctrlList.SortItems(...) sortiert. Also wenn sie in der Liste stehen. Das Probel ist halt dass ich keinen Primärschlüssel in der CListCtrl habe mit dem ich dann "rückwärts" suchen kann.
15. August 200619 j Wenn du dein Select Statement entsprechend formulierst, müsste das doch sortiert werden.
15. August 200619 j Wenn du dein Select Statement entsprechend formulierst, müsste das doch sortiert werden. Du meinst hier: m_DBDokumente.Open(dbOpenDynaset, "SELECT * FROM Dokumente", 0); // Datenbank öffnen Wie sortiere ich das nach Datum? Mein SQL ist sehr mäßig Wenn das ginge, wäre es toll!!
15. August 200619 j ICH HABS HINBEKOMMEN!!! m_DBDokumente.Open(dbOpenDynaset, "SELECT * FROM Dokumente ORDER BY(Datum)", 0); // Datenbank öffnen Es war sooo einfach *schäm* ich hab einfach zu sehr in C++ gedacht! Tausend Dank! Und die Zuordung stimmt auch!! DANKE
Erstelle ein Konto oder melde dich an, um einen Kommentar zu schreiben.