Hallo zusammen,
ich krame gerade meine alten Delphikenntnisse aus, um eine Absenzenverwaltung für unsere Schule zu basteln.
Was ich brauche: ich hole aus einer
Query die Namen der Schüler eines Kurses (sch_id, sch_name).
Die Namen sollen in einem DBGrid angezeigt werden, allerdings möchte ich daneben noch eine (bzw. merhere) Spalte mit einer Checkbox haben - die wird angeklickt, wenn ein Schüler zu einem bestimmten Termin gefehlt hat - dh. diese Information kommen nicht aus einer
Query, sondern werden beliebig editiert und dann am einfachsten am Ende mit einem "alles speichern" Zeile für Zeile ausgelesen und dann weiterverarbeitet (für alle angeklickten wird eine Absenz gespeichert). Je nach Fall sollen es mehrere unabhängige Spalten werden, die man anklicken kann (gefehlt_Tag1, gefehlt_Tag2 etc).
Was ich bislang probiert habe: (
Mysql 5, Zeos, Delphi 6 prof)
- zusätzliche Felder direkt per
mysql generieren:
select sch_id, sch_name, false as gefehlt from schueler...
- oder zusätzliche Felder über die
Query hinzufügen (als int oder boolean,beides probiert)
- zum Anzeigen habe ich das SMDBGrid mit dem "vorgefertigten" Checkbox-Editor versucht - der zeigt zwar Checkboxen richtig an, wenn die Daten aus einer
query kommen, man kann aber keine Werte ändern (obwohl natürlich
query,
query.felder, grid und grid.spalten auf readonly = false gesetzt sind)
- und das JvDBUltimateGrid aus den
Jedi-Komponenten, das hat ja auch die Eigenschaft "boolean editor".. damit kann ich zwar ne checkbox setzen, die aber beim Verlassen des Felds wieder unchecked wird.
Ich bin gerade wirklich am Verzweifeln. Lasse ich mir die Felder als stinknormale integer anzeigen, kann ich Werte ändern. Die gleichen Daten an einem SMDBGrid angehängt, ändert das SMDBGrid dann auch schön artig die Checkboxen - aber eben ein direktes Anklicken der Boxen im SMDBGrid funzt nicht.
Hat jemand vielleicht einen Tipp, wie ich das lösen kann?
Vielen Dank für eure Hilfe!
LG.. Heiko