In einer TZQuery sind einige Spalten die eingeblendet werden sollen deklariert (rechtsklick auf dem TZQuery auf dem Formular und "Felder bearbeiten...").
Wenn ich die TZQuery öffne werden alle Spalten angezeigt die da in der Liste drin stehen und die Spalten die da nicht drin stehen werden nicht in TDBGrid gezeigt. Soweit ist das auch OK.
Nun ist es so dass der ein oder andere noch extra Spalten haben möchte, die in meinem Programm so nicht existieren, dazu legt er dann einfach in z.B. MySQL in der Tabelle noch zusätzliche neue Spalten an.
Mein Programm stört das soweit nicht, es werden einfach diese Spalten nicht in TDBGrid gezeigt.
Wie kann ich es hin bekommen dass diese Spalten dennoch in TDBGrid eingeblendet werden?
Ich habe ein Schleife durchlaufen und erkenne welche Spalten "Fremd" sind und versucht diese hinzu zu fügen. Doch leider zeigt mir das TDBGrid die immer noch nicht.
Code: Alles auswählen
fi := TIntegerField.Create(Self); // Erzeuge ein neues TField
fi.FieldName := slQ_bauteilExtra[i2]; // Feldname zuweisen
fi.DisplayLabel := slQ_bauteilExtra[i2]; // Bezeichner dem Feldname gleich setzen
qBauteil.Fields.Add(fi); // Felddeklaration erweitern
Code: Alles auswählen
qBauteil.FieldDefs.Add(slQ_bauteilExtra[i2], q.FieldByName(slQ_bauteilExtra[i2]).DataType);
Vielen Dank für die Hilfe, Markus