Dynamische Feldkomponenten

Aus RAD Studio
Wechseln zu: Navigation, Suche

Nach oben zu Felder - Index


Standardmäßig werden Feldkomponenten dynamisch generiert. Tatsächlich sind alle Feldkomponenten für Datenmengen dynamische Felder, wenn Sie eine Datenmenge das erste Mal in ein Datenmodul integrieren, angeben, woher die Datenmenge ihre Daten bezieht, und die Datenmenge öffnen. Eine Feldkomponente ist immer dann dynamisch, wenn sie automatisch erstellt wurde, basierend auf den zugrunde liegenden physikalischen Charakteristika der in einer Datenmenge enthaltenen Daten. Datenmengen legen für jede Spalte der zugrunde liegenden Daten eine Feldkomponente an. Welcher spezielle Nachkomme von Data.DB.TField für jede Spalte erstellt wird, werden durch die Informationen über den Feldtyp bestimmt, die von der Datenbank oder (bei TClientDataSet) von einer Datenquellenkomponente übermittelt werden.

Dynamische Felder sind temporäre Felder. Sie existieren nur, solange eine Datenmenge geöffnet ist. Bei jedem erneuten Öffnen einer Datenmenge, die dynamische Felder verwendet, wird eine vollständig neue Menge von dynamischen Feldkomponenten für die Datenmenge erstellt. Diese Feldkomponenten basieren auf der aktuellen Struktur der Daten, die der Datenmenge zugrunde liegen. Wenn die Spalten in diesen Daten geändert wurden, werden die automatisch generierten Feldkomponenten automatisch angepasst, wenn Sie die betreffende Datenmenge das nächste Mal öffnen.

Sie verwenden dynamische Felder in Anwendungen, in denen die Datenanzeige und –bearbeitung flexibel gehandhabt werden soll. Verwenden Sie dynamische Felder beispielsweise um ein Datenbanksuchprogramm zu erstellen, weil sich die Datenbanktabellen in Bezug auf Anzahl und Typ der Spalten unterscheiden. Außerdem sind dynamische Felder auch für Anwendungen geeignet, in denen Benutzerinteraktionen mit Daten in erster Linie in Gitterkomponenten stattfinden und in denen die Datenmengen häufig gewechselt werden.

So verwenden Sie dynamische Felder in einer Anwendung:

  1. Fügen Sie Datenmengen und Datenquellen in ein Datenmodul ein.
  2. Verbinden Sie die Datenmengen mit Daten. Hierzu verwenden Sie eine Verbindungskomponente oder einen Provider, um die Quelle der Daten mit der Datenmenge zu verbinden, und legen dann die Eigenschaften fest, die angeben, welche Daten die Datenmenge repräsentiert.
  3. Ordnen Sie die Datenquellen den Datenmengen zu.
  4. Platzieren Sie datensensitive Steuerelemente in den Formularen der Anwendung, fügen Sie das Datenmodul in die uses-Klausel aller Formular-Units ein, und verknüpfen Sie die datensensitiven Steuerelemente mit einer Datenquelle im Modul. Verknüpfen Sie außerdem mit jedem datensensitiven Steuerelement ein Feld, wenn das Steuerelement dies erfordert. Beachten Sie, dass beim Einsatz dynamischer Feldkomponenten nicht gewährleistet ist, dass von Ihnen angegebene Feldnamen beim Öffnen der Datenmenge dort aufscheinen.
  5. Öffnen Sie die Datenmengen.

Dynamische Felder sind zwar einfach einzusetzen, weisen aber auch Einschränkungen auf. Beispielsweise ist immer zusätzlicher Programmieraufwand nötig, wenn die Anzeige- und Bearbeitungsstandards geändert werden sollen, wenn eine Änderung der Anzeigereihenfolge erforderlich ist, oder wenn der Zugriff auf Felder in der Datenmenge eingeschränkt werden soll. Es ist außerdem nicht möglich, zusätzliche Felder (z.B. berechnete oder Lookup-Felder) für die Datenmenge zu erstellen und den vorgegebenen Datentyp eines dynamischen Feldes zu wechseln. Mithilfe des Felder-Editors können Sie persistente Feldkomponenten für die Datenmengen anlegen, die Ihnen die Steuerung und Festlegung von Feldern in Datenbankanwendungen ermöglichen.

Siehe auch