AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Virtual Treeview und Datenbank

Ein Thema von Frank99 · begonnen am 6. Mai 2005 · letzter Beitrag vom 12. Jun 2005
Antwort Antwort
Frank99

Registriert seit: 6. Mai 2005
Ort: Eurasburg/Friedberg
3 Beiträge
 
#1

Virtual Treeview und Datenbank

  Alt 6. Mai 2005, 09:22
Ich habe folgendes Problem mit der Virtual Treeview Komponente von
Mike Lischke:

Ich mochte einen Baum aufbauen, dessen Daten aus einer Datenbank kommen,
die folgenden Aufbau hat:

Ich habe eine Tabelle Gebäude mit Gebäudedaten
Weiterhin habe ich eine Tabelle mit Raumdaten die einen Frendschlüssel auf die
Gebäudedaten hat.

Der Baum soll jetzt so aussehen

Infrastruktur <- nur ein Titel auf Level 0
+ Gebäude 1 <- Gebäudedaten auf Level 1
- Raum <- zugehörige Raumdaten in Abhängigkeit vom Gebäude
- Raum
+ Gebäude 2

Ich habe mich schon überall umgesehen, aber ich komme mit den bisherigen Informationen
nicht wirklich weiter.

Wer kann helfen ?
  Mit Zitat antworten Zitat
Igotcha

Registriert seit: 22. Dez 2003
544 Beiträge
 
Delphi 2006 Professional
 
#2

Re: Virtual Treeview und Datenbank

  Alt 6. Mai 2005, 09:48
Zitat von Frank99:
Der Baum soll jetzt so aussehen

Infrastruktur <- nur ein Titel auf Level 0
+ Gebäude 1 <- Gebäudedaten auf Level 1
- Raum <- zugehörige Raumdaten in Abhängigkeit vom Gebäude
- Raum
+ Gebäude 2
Wenn ich das richtig interpretiere, dann hast Du neben dem technischen Problem auch ein Designproblem, denn Du mußt eines bedenken: Du hast 2 verschiedene Informationen, die Du darstellen möchtest (eigentlich 3), aber Du hast in dem Treeview immer nur die gleichen Spalten (und damit auch Bezeichner).

Ich denke, dass sich die Informationen von "Gebäude" von denen eines "Raums" unterscheiden - wie willst Du diese darstellen?

Beispiel des Treeviews:
Delphi-Quellcode:
Name Strasse Eigentümer Raumnr
============================================================
Infrastruktur 1
Gebäude 1 Gebäudestrasse 1 Eigentümer 1 ???
+- Raum1 ???? ????? 100
Verstehst Du, was ich meine?

Gruß Igotcha
  Mit Zitat antworten Zitat
Frank99

Registriert seit: 6. Mai 2005
Ort: Eurasburg/Friedberg
3 Beiträge
 
#3

Re: Virtual Treeview und Datenbank

  Alt 6. Mai 2005, 10:00
Soweit mir bekannt ist, kann ich zu jedem Node eine Datenstruktur ablegen.
Die Definition der Dataenstuktuen lautet wie folgt:

PGeb = ^TGeb;
TTGeb = packed record
Geb_id : integer;
Geb_bez : string[80];
end;

PRaum = ^TRaum;
TRaum = packed record
Raum_ID : integer;
Geb_ID : integer;
Raum_Bez : string[40];
Groesse : integer;
end;

Ich möchte also, sobald ich den Rooteintrag öffne die Daten aus
der Tabelle "Gebäude anzeigen".
Wenn ich dann den entsprechenden Knoten Gebäude öffne, sollen alle Daten
aus der gefilterten Tabelle Raum angezeigt werden, wobei die Informationen, die
angezeigt werden nur die Bezeichnungen sind.
  Mit Zitat antworten Zitat
Generalissimo

Registriert seit: 28. Aug 2003
187 Beiträge
 
Delphi 6 Enterprise
 
#4

Re: Virtual Treeview und Datenbank

  Alt 6. Mai 2005, 11:26
Welche Datenbank nutz du? Vielleicht kann man das abarbeiten auf die DB abschieben.
  Mit Zitat antworten Zitat
Igotcha

Registriert seit: 22. Dez 2003
544 Beiträge
 
Delphi 2006 Professional
 
#5

Re: Virtual Treeview und Datenbank

  Alt 6. Mai 2005, 11:48
Zitat von Frank99:
Soweit mir bekannt ist, kann ich zu jedem Node eine Datenstruktur ablegen.
Die Definition der Dataenstuktuen lautet wie folgt:

PGeb = ^TGeb;
TTGeb = packed record
Geb_id : integer;
Geb_bez : string[80];
end;

PRaum = ^TRaum;
TRaum = packed record
Raum_ID : integer;
Geb_ID : integer;
Raum_Bez : string[40];
Groesse : integer;
end;
Du kannst in einem Knoten ablegen, was Du möchstest, aber Du möchtest es doch auch anzeigen lassen. Das toll am VTV ist ja, dass er die Mögklichkeiten eines Treeviews und einer Tabelle vereint, nur möchtest Du offensichtlich völlig evrschiedene Dateninhalte in einer Sicht anzeigen lassen. Wie soll dann Deine angezeigte "Tabelle" aussehen? Und ich meine tatsächlich mit "aussehen" genau das, was man sehen soll...

Wenn man mal die Baumstruktur einen Moment außen vor läßt, bleibt die reine Tabellensicht übrig. Jetzt schau Dir mal Deine Datenstrukturen an. Wie möchtest Du diese denn in einer Tabelle darstellen?

Wenn überhaupt, dann geht das nur so, sieht aber optisch schlecht aus:

Delphi-Quellcode:
Name GEB_ID GEB_BEZ RAUM_ID GEB_ID RAUM_BEZ GROESSE
====================================================================
Gebäude 1 Geb1 NULL NULL NULL NULL
+-Raum NULL NULL 100 1 Raum1 100
Da wo ich "NULL" hingeschrieben habe, hast Du für einen Eintrag keine Werte und die Darstellung ist somit einfach unübersichtlich und eigentlich nicht das, wofür der VTV gedacht ist.

Schau Dir mal das hier an: Das ist ein Screenshot von einem Programm von mir und da siehst Du, dass in der "Tabelle" grundsätzlich die gleichen Daten verwendet werden, eben nur hierarchisch dargestellt http://www.delphipraxis.net/download.php?id=7436

Gruß Igotcha
  Mit Zitat antworten Zitat
Frank99

Registriert seit: 6. Mai 2005
Ort: Eurasburg/Friedberg
3 Beiträge
 
#6

Re: Virtual Treeview und Datenbank

  Alt 6. Mai 2005, 12:07
Also noch mal zum Verständnis.


Die Virtual Treeview als Baumdarstellung soll nur eine hierachische Sicht auf die Datenbank geben und damit sozusagen als Navigation durch die unterschiedlichen
Tabellen dienen.

In einer zweiten Virtual Treeview möchte ich dann die Detailinformationen anzeigen,
ähnlich dem Windows Explorer bzw auf Mausckick öffnet sich ein neues Fenster mit
den entsprechenden Detailinformationen.

Die Baumstruktur soll nicht als Kombination von Baum- und Listansicht dienen.

Ich hoffe ich konnte mein Problem deutlich genug formulieren.

Ich arbeite mit D7 Pro und Firebird 1.5.


Gruß

Frank
  Mit Zitat antworten Zitat
ratloser

Registriert seit: 4. Mai 2005
Ort: Linz
36 Beiträge
 
#7

Re: Virtual Treeview und Datenbank

  Alt 8. Mai 2005, 22:40
Schau mal da nach!

VirtualstringTree

Sollte alles für Dich dabei sein.

Gruss Ratloser
Vielen Dank!

Konrad
  Mit Zitat antworten Zitat
waldforest

Registriert seit: 8. Mai 2005
366 Beiträge
 
Delphi XE3 Enterprise
 
#8

Re: Virtual Treeview und Datenbank

  Alt 12. Jun 2005, 12:03
Hallo,
hatte die gleiche Herausforderung.
Schau mal meine Lösung an (bin Delphi-Anfänger, geht bestimmt noch eleganter), funktioniert bei mir Tadellose.

http://www.delphipraxis.net/internal...9cc9d26c8d8f51

Tom
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 13:28 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