Hallo,
ich erzeuge zur Laufzeit alle Spalten eines DBGrids, indem ich über
Query.FieldCount iteriere. So erhalte ich alle Spalten, die ich durch die Abfrage der
Query in der
DB abfrage.
Zusätzlich möchte ich jetzt nachträglich dem Grid eine Spalte hinzufügen. Dazu schaue ich in die
DB und ermittle welches der Felder ein Fremdschlüssel ist. Für dieses möchte ich dann eine zusätzliche Spalte erzeugen und in der entsprechenden Tabelle den Fremdschlüssel 'nachschlagen' und in der neuen Spalte eintragen.
Ist das Möglich? Kann ich zu den persistent erzeugten Feldern des Grids eine weitere Spalte hinzufügen? Eine 'normale' Spalte funktioniert ja:
Delphi-Quellcode:
var Column: TColumn;
...
Column:= DBGrid1.Columns.Add;
Column.FieldName:= 'Kundenname';
Das Problem ist nun die neu erzeugte Spalte mit Werten zu versehen. So möchte ich alle Rechnungen im Grid darstellen. Statt der Kundennummer soll ein weiteres Feld 'Kundenname' hinzugefügt werden, welches anhand der 'Kundennummer' den 'Kundennamen' bereitstellt.
Ich möchte die Abfrage nicht in einem
SQL-Statement unterbringen. Ich möchte ein zusätzliches Feld hinzufügen, welches nicht in der
DB existiert.