Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi Treeview --> DbGrid Master/Detail/Detail - möglich ?? (https://www.delphipraxis.net/54761-treeview-dbgrid-master-detail-detail-moeglich.html)

schof 11. Okt 2005 11:46

Datenbank: Access • Zugriff über: ADO

Treeview --> DbGrid Master/Detail/Detail - möglich ??
 
Hallo,
ich habe einen treeview wenn ich dort auf einen node klicke sollte rechts im db grid die eigenschaften angezeigt werden.

Treeview:
die nodes werden aus der tabell desc (description) ausgelesen wenn ich dann auf eine klicke
desc ist verbunden mit gruppe 1 per master detail jedoch decke ich damit nur einen teil ab ich müsste noch mit grupp2 und gruppe3 verbinden jedoch habe ich keine ahnung wie jetzt suche ich schon 2 tage und finde keine lösung.

Für jede Hilfe bin ich sehr dankbar .
http://www.gwambats-bergschof.de/gfx/treeview.jpg

http://www.gwambats-bergschof.de/gfx/grid.jpg

marabu 11. Okt 2005 12:14

Re: Treeview --> DbGrid Master/Detail/Detail - möglich ??
 
Hallo,

ich würde dir gerne helfen, aber leider kann ich mit deiner Beschreibung das Problem nicht so richtig erkennen. Verstanden habe ich nur, dass du eine Gliederung in einer TreeView anzeigst und zum jeweils selektierten Knoten eine Liste mit Produktdetails in einem Grid. Was bei dir Gruppe1,2,3 sein soll lässt du irgenwie im Dunkeln. Speicherst du die Gliederung etwa redundant direkt in der Produkttabelle? Und sollen bei Auswahl von TFT alle 15" und 17" Monitore angezeigt werden? Oder geschieht die Selektion erst auf der Blattebene des Gliederungsbaumes?

Grüße vom marabu

schof 11. Okt 2005 12:22

Re: Treeview --> DbGrid Master/Detail/Detail - möglich ??
 
Hi,
ja Wenn mann TFT auswählt sollen alle 15" und 17" momitore ausgegeben werden.
Gruppe1 steht z.b. kameras oder Monitor dadurch werden sie zum schlüssel zur desc.
gruppe2 steht dann digitalkameras oder TFT zum beispiel
gruppe3 steht dann profi oder 17"monitore

Danke schon mal

marabu 11. Okt 2005 12:53

Re: Treeview --> DbGrid Master/Detail/Detail - möglich ??
 
Die 3 Gruppenschlüssel (Hauptgruppe, Gruppe, Untergruppe) speicherst du also redundant bei den Produktdaten. Sind die Gruppen in deiner Tabelle desc auch redundant gespeichert? Üblich ist da - wie ich bereits in einem anderen thread geschrieben habe - eine selbstrekursive Tabelle: GROUPS (ID, POSITION, TITLE, GROUPS_ID, ROOT_ID).
Bei deiner Art die Produktdaten zu selektieren benötigst du einen Powerset Operator, der in ACCESS leider nicht implementiert ist. Ich würde auf die Master-Detail Beziehung und die redundante Speicherung verzichten und den Powerset in Delphi rekursiv bestimmen. Deine Produktdaten würdest du dann nicht mit WHERE GROUP2 = :G2 selektieren, sonder mit WHERE GROUP_ID IN (:POWERSET). Für kompakte Gliederungen wird das Limit für SQL Statements sicher nicht gesprengt. Stößt du an diese Grenze, dann bleibt immer noch die Möglichkeit die am Powerset beteiligten Primärschlüssel in einer (evtl. temporären) Tabelle zu speichern.

marabu


Alle Zeitangaben in WEZ +1. Es ist jetzt 06:11 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 by Thomas Breitkreuz