AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Delphi Kreuztabelle und Visualisierung
Thema durchsuchen
Ansicht
Themen-Optionen

Kreuztabelle und Visualisierung

Ein Thema von Der Jan · begonnen am 12. Mai 2006 · letzter Beitrag vom 15. Mai 2006
Antwort Antwort
Benutzerbild von Der Jan
Der Jan

Registriert seit: 22. Dez 2005
289 Beiträge
 
Delphi XE7 Ultimate
 
#1

Kreuztabelle und Visualisierung

  Alt 12. Mai 2006, 09:40
Datenbank: Firebird • Version: 1.5 • Zugriff über: FIBPlus
Hallo zusammen,

ich habe eine Frage eher grundlegender Natur...

Und zwar habe ich zwei DB-Tabellen, eine enthält Daten über Bauteile, die zweite Fehlercodes.
Nun kann jedes Bauteil mehrere Fehlercodes haben, also habe ich eine dritte Tabelle erstellt, in der die entsprechenden Verknüpfungen stehen (Felder: eigener PK und zwei FK für Bauteil und Fehlercode).

Nun bin ich auf der Suche nach einer einfachen Lösung, um das ganze zu visualisieren und zu editieren.
Im Prinzip wäre das ja ein Grid, die Zeilenbeschriftung aus der Teile-Tabelle, die Spaltenbeschriftung aus der Fehlercode-Tabelle und im eigentlichen Grid setzt man Häkchen oder Kreuze woraus die entsprechenden Einträge in Verknüpfungstabelle erzeugt werden.
Ich habe schonmal bei Torry nach einer passenden Komponente gesucht, aber leider nix passendes gefunden.
Kennt jemand eine entsprechende Komponente bzw. eine Lösung, wie man das z.B. mittels DBGrid oder besser DevExpressQuantumGrid realisieren könnte?
Gruß, Jan
  Mit Zitat antworten Zitat
Hoshy

Registriert seit: 27. Apr 2006
32 Beiträge
 
Delphi 7 Architect
 
#2

Re: Kreuztabelle und Visualisierung

  Alt 12. Mai 2006, 13:48
Mmmh, vielleicht ist das TExRxDBGrid ja eine Hilfe:

http://www.torry.net/quicksearchd.ph...Grid&Title=Yes

Zeilenbezeichnungen lassen sich damit realisieren, indem Du eine LockedColumn benutzt. Die Werte dafür liefert ein passendes Feld Deiner Tabellen, oder Du baust ein passenden Pseudofeld in Dein SELECT Statement ein, oder Du definierst ein berechnetes Feld im DataSet selbst.

Das Grid ist in der Lage, auch Checkboxen darzustellen, hab' ich selbst aber noch nicht gemacht. Da der Quellcode aber dabei ist, kannst Du gucken, wie es funktioniert...Allerdings setzt das Grid auf die RX Library auf, die Du also auch installieren musst:

http://www.torry.net/quicksearchd.ph...rary&Title=Yes
  Mit Zitat antworten Zitat
shmia

Registriert seit: 2. Mär 2004
5.508 Beiträge
 
Delphi 5 Professional
 
#3

Re: Kreuztabelle und Visualisierung

  Alt 12. Mai 2006, 13:53
Du könntest ein TStringGrid verwenden mit FixedRows=1, FixedCols=1.
1.) zählen, wieviele Fehlercodes es gibt. diese werden waagerecht abgetragen
Cols = AnzahlFehlercodes+1
2.) die Fehlercode werden in einer TStringList gespeichert, um bei 4.) die richtige Spalte zu finden
3.) Für jedes Bauteil wird nun eine neue Zeile hinzugefügt
Schleife über
SELECT * FROM Bauteile 4.) Schleife über
SELECT * FROM BauteilFehlercodes WHERE IdBauteil=:aktuellesBauteil und die passenden Zellen mit einem '*' füllen

Da die '*' optisch nicht so ansprechend sind, könntest du das Event
OnDrawCell benützten um statt des '*' ein hübsches Icon zu zeichnen.
Andreas
  Mit Zitat antworten Zitat
Benutzerbild von Der Jan
Der Jan

Registriert seit: 22. Dez 2005
289 Beiträge
 
Delphi XE7 Ultimate
 
#4

Re: Kreuztabelle und Visualisierung

  Alt 15. Mai 2006, 09:34
Hallo, erstmal danke für die Tips. Ich hab mir die Komponente mal angeschaut, ist nicht so ganz, was ich suche, ich meine die Darstellung ist ok, die könnte ich aber auch mit DevExpress machen. Die eigentliche wichtige Funktionalität, das Zurückschreiben in die DB ist da aber auch nicht vorhanden.
Dann werd ich wohl erstmal bei meiner jetzigen Lösung bleiben, ein DB-Grid mit den Teilen und eine ChecklistBox mit den Fehlercodes, wenn man ein Teil auswählt, werden die Einträge in der Checklistbox entsprechend gesetzt.
Wenn ich die Zeit dazu finde, werd ich wohl mal was schreiben (neue Komponente oder auf einer schon existierenden aufsetzen), was ich dann auch hier posten werde, aber wann ich die Zeit finde, steht noch in den Sternen
Gruß, Jan
  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 06:31 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