Einzelnen Beitrag anzeigen

barnti

Registriert seit: 15. Aug 2003
Ort: Mal hier mal da...
689 Beiträge
 
Delphi 7 Enterprise
 
#5

Re: Sichtbarkeit von Tabellenfeldern

  Alt 3. Feb 2004, 21:08
Hi,

ich habe mittlerweile, nach langem Suchen, die Antwort gefunden. Will man die Eigenschaften eines Feldes nutzen, so muss man persistente Felder für ein Dataset erzeugen.

Nutzt man die Felder dynamisch, soll heißen man öffnet einfach die Query, so werden alle Felder automatisch erzeugt. Damit bleiben aber viele Eigenschaften nicht nutzbar.

Fügt man die Felder als persistent hinzu kann man Eigenschaften, wie 'readonly', 'visible' und 'CustomConstraint' nutzen und diese einfach an andere Elemente weitergeben.

schnipp
Delphi-Quellcode:
procedure TDM_Database.CreatePersistentFields(Datasource: TDatasource);
var i: Integer;
begin
  Datasource.DataSet.Open;
  for i := 0 to Datasource.DataSet.FieldDefs.Count -1 do
  begin
      Datasource.DataSet.Close;
      Datasource.DataSet.FieldDefs.Items[i].CreateField(self);
    end;
end; // Gefunden in DP-Suche: Persistente Felder
schnapp

Dann funktioniert auch Dein Vorschlag problemlos: einfach DBGrid mit Datasource verbinden. Die Eigenschaften der Felder sind dieselben. Damit können die Eigenschaften der Felder im DBGrid benutzt werden.

Danke für Deine Mühe,

Gruß,

Barnti
  Mit Zitat antworten Zitat