![]() |
Datenbank: SQL 2000 • Zugriff über: ADO
DataModul - Master Detail
Hallo,
ich möchte meine VCL Forms soweit es geht von ADO Komponenten befreien. Dafür habe ich ein Datamodul eingefügt. Hier möchte ich gerne eine Masterdetailverbindung mit den ADO Komponenten herstellen und diese dann mit den DBGrids des VCL Form verbinden. Auf dem dem Datamodul habe ich folgende Komponenten eingefügt: 1. ADOConnection (AC) - Diese soll -solange der User das Programm geöffnet hat- aktiv bleiben. 2. ADOTable (AT1)- Diese hat als Connection die AC und als Datasource die DS eingetragen. Die Tabelle, die von der Datenbank gezogen wird, ist eine View (VW_PERSON) 3. ADOTable (AT2)- Wie 2. nur die View zeigt auf die VW_ADRESSEN. 4. Datasource (DS) Die Verbindung zwischen den VWs ist PERS_ID -> ADR_PERS_ID Auf dem VCL Form habe ich 2 DBGrids: 1. DBGrid (DG1) soll die Personen anzeigen. 2. DBGrid (DG2) soll die dazugehörigen Adressen anzeigen. Was muss ich im Datamodul einstellen, damit aus den ATs eine Master/Detail Verbindung ensteht? Wie kann ich auf das Datamodul zugreifen und die DB Grids an die Table heften. Auf eine Klick in DG1 soll natürlich die DG2 die neuen Daten anzeigen? :gruebel: Danke! Oliver |
Re: DataModul - Master Detail
Hallo Oliver,
zusätzlich zu DS auf dem DatenModul brauchst du DS1 und DS2 auf deiner GridForm. Das DatenModul musst du dann noch in die uses Klausel des implementation Abschnitts deiner GridForm aufnehmen. Vielleicht bringt dich das ja schon auf den Weg...
Delphi-Quellcode:
Grüße vom marabu
// DatenModul DM.OnCreate()
DS.DataSet := AT1; AT2.MasterSource := DS; AT2.MasterFields := 'PERS_ID'; // GridForm.OnCreate DS1.DataSet := DM.AT1; DG1.DataSource := DS1; DS2.DataSet := DM.AT2; DG2.DataSource := DS2; |
Re: DataModul - Master Detail
:dancer:
Vielen Dank für den ausführlich Code. Das rockt....... LG Oliver |
Alle Zeitangaben in WEZ +1. Es ist jetzt 10:23 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz