Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi DBDiagramm anzeigen!!! (https://www.delphipraxis.net/19063-dbdiagramm-anzeigen.html)

Christian18 28. Mär 2004 17:50


DBDiagramm anzeigen!!!
 
Hallo,

Ich habe zwei Paradox7 Tabellen die miteinander verknüpft sind.

Die eine:

IDX + *
Name A 10

Die zweite:

IDX + *
RIDX I
Weret N

So sieht meine Datenbank strucktur aus.

In RIDX wird der IDX von der ersten DB gespeichert.

BSP:

Ich habe in der ersten DB drei Namen Frank, Stefan und Lisa. Wenn ich in meinen DBGrid doppelt hauf Lisa klicke, dann öffnet sich eine neue Form und dort ist auch ein DBGrid drinn. Aber es sind nicht alle werte aus der zweiten DB enthalten sondern nur die, die auch über den RIDX auf den IDX von DB eins zeigen. Es ist ein bisschen schwer zu erklären. Ich hoffe Ihr könnt damit etwas anfangen. Alchso bei der zeiten DB habe ich auch noch ein Sehundärindizies heißt IRIDX. So das war noch nicht alles. Jetzt kommt meine eigentlich Frage. Ich habe auf der Form wo die werte der Personen angezeigt werden, da habe ich auch noch ein Diagramm, ein DB Diagramm. In diesem Diagramm sollen aber nur die werte angezeigt werden die auch zu einer Person zutreffen. Wenn ich einen Datensatz neu anlege oder auch mal einen lösche, dann soll das diagramm aktuallisiert werden. Wer kann mir bei dieser schweren frage helfen??? Naja für die Moderatoren ist diese frage bestimmt nicht sehr schwer. für mich aber schon.

Mit freundlichen Grüßen

Christian18

PS: Wenn interesse besteht, dann kann ich die DB-Struckture auch einmal hier hochladen. Aber da ich den Traffic dieser Internetpräsens nicht unbedingt hoch treiben wollte, da lasse ich es lieber. Also schon einmal vielen dank im vorraus.

Leuselator 31. Mär 2004 15:50

Re: DBDiagramm anzeigen!!!
 
Man nehme:
Form1: TQuery1,TDataSource1,TDBGrid1 - Unitname: MyUnit1
Form2: TQuery2,TDataSource2,TDBGrid2 - Unitname: MyUnit2
dann:
TQuery1 SQL-Statement:
SQL-Code:
SELECT * 
  FROM TabelleAllgemein
TQuery2 SQL-Statement:
SQL-Code:
SELECT * 
  FROM TabelleDetailles
 WHERE RIDX = :IDX --der Doppelpunkt ist wichtig
Definition des Form2 ändern:
Delphi-Quellcode:
unit MyUnit2;
interface
  ...
implementation
uses MyUnit1;
...
Dann in Form2 für Eigenschaft "DataSource" der TQuery2 im OI angeben: "Form1.DataSource1". Dadurch wird nun die Detaille-Query im Detaill-Fenster immer aktualisiert, wenn in Form1 der Datensatz gewechselt wird. Nun nur noch für Form1, TDBGrid1 im OI doppelt auf das Ereignis "OnDblClick" klicken und den Code hier eingeben:
Delphi-Quellcode:
procedure TForm1.DBGrid1DblClick(Sender:TObject);
begin
  Form2.ShowModal;
end;
Fertig.
Gruß
[Edit]Nachdem ich beim 2. Lesen, am Ende Deines Posts die "eigentliche Frage" entdeckt habe: das DB-Diagramm auch einfach (wie das DBGrid2) an die DataSource2 auf Form2 koppeln (Rechtsklick, Diagramm bearbeiten, Lasche "Reihen" Datenquelle) - dann sollte es klappen[/Edit]


Alle Zeitangaben in WEZ +1. Es ist jetzt 04:08 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz