AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Delphi Wie am besten Daten visualisieren und auswahl verarbeiten
Thema durchsuchen
Ansicht
Themen-Optionen

Wie am besten Daten visualisieren und auswahl verarbeiten

Ein Thema von ryLIX · begonnen am 1. Feb 2009 · letzter Beitrag vom 5. Feb 2009
Antwort Antwort
Seite 2 von 3     12 3      
ryLIX

Registriert seit: 16. Nov 2008
Ort: Westoverledingen
264 Beiträge
 
RAD-Studio 2009 Pro
 
#11

Re: Wie am besten Daten visualisieren und auswahl verarbeite

  Alt 2. Feb 2009, 17:52
*push*
Markus
Hamburflys, Scrubble-Fubble-Puff-Shake, Muffin-Purper-Gurk?
  Mit Zitat antworten Zitat
mjustin

Registriert seit: 14. Apr 2008
3.006 Beiträge
 
Delphi 2009 Professional
 
#12

Re: Wie am besten Daten visualisieren und auswahl verarbeite

  Alt 2. Feb 2009, 18:40
Zitat von ryLIX:
Bezieht sich das SELCET Stmt nicht immer auf Columns?
Man kann in der SELECT Klausel auch dann konstante Ausdrücke angeben, wenn man mit der Ergebnisdatenmenge ein INSERT durchführt.

SQL-Code:
INSERT INTO NeueTabelle (NeuesFeld, sonstige Felder ...)
SELECT KonstanterAusdruck, sonstige Felder ...
FROM AlteTabelle
Damit können in diesem Fall die Tabellen-IDs bequem per SQL zusammen mit den sonstigen Daten aus den bisherigen Tabellen in die neue "Supertabelle" übernommen werden.
Michael Justin
habarisoft.com
  Mit Zitat antworten Zitat
ryLIX

Registriert seit: 16. Nov 2008
Ort: Westoverledingen
264 Beiträge
 
RAD-Studio 2009 Pro
 
#13

Re: Wie am besten Daten visualisieren und auswahl verarbeite

  Alt 2. Feb 2009, 19:21
Ah ok danke für die erklärung.
War mir bisher nicht bekannt

Bleibt immer noch die eigentlich Threadfrage.
Da bin ich noch nciht weiter.
Markus
Hamburflys, Scrubble-Fubble-Puff-Shake, Muffin-Purper-Gurk?
  Mit Zitat antworten Zitat
ryLIX

Registriert seit: 16. Nov 2008
Ort: Westoverledingen
264 Beiträge
 
RAD-Studio 2009 Pro
 
#14

Re: Wie am besten Daten visualisieren und auswahl verarbeite

  Alt 3. Feb 2009, 19:24
So ich ein bisschen gewerkelt und überlegt...
Die Datenbank habe ich nun Umgebaut wie es empfohlen wurde.
Sie hat nun folgende Struktur:
SERIES: VARCHAR
SG: VARCHAR
FSW: VARCHAR
PSW: VARCHAR
COMMENT: NVARCHAR (Hab entdeckt das der Umlaute erlaubt )

Nun bin ich wieder bei der Visualisierung.
Ich hatte überlegt hier ein record einzusetzten aber wieder verworfen weil es ja quatsch wäre und nur auf die Performance drücken würde.

Mein derzeitiger Plan ist so:
Ich hole mir aus der Tabelle alle Einträge von Series und SG wo Comment nicht NULL ist und baue daraus ein TreeView auf.
Hier wäre schon eine Frage:
Lieber alle auf einmal verarbeiten. In einem record array zwischen speichern und dann über eine funktion ins TreeView.
Oder gleich in der while Schleife die Funktion für das TreeView aufrufen?

Die anderen Daten würde ich dann wie im Hauptfenster über das selektierte TreeViewNode holen.
Dann brächte ich nur noch einen "merker" damit ich weiß welche Datansätze in die DB geladen werden sollen bzw in die andere geschickt werden sollen.

Hat jemand eine Idee dazu?
Markus
Hamburflys, Scrubble-Fubble-Puff-Shake, Muffin-Purper-Gurk?
  Mit Zitat antworten Zitat
shmia

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

Re: Wie am besten Daten visualisieren und auswahl verarbeite

  Alt 4. Feb 2009, 19:32
Du kannst auch mehrere Datensätze im DBGrid markieren.
DBGrid1.Options := DBGrid1.Options + [dgMultiSelect] Damit könnte der Benutzer auswählen, welche Datensätze er exportieren will.
Die markierten Datensätzen werden dann "abgegrasst" und als CSV-Datei oder XML auf Platte geschrieben.

Zusätzlicher Komfort wäre das Markieren per Wildcards.
Der Benutzer wählt im Menue "per Wildcard markieren..." und wird nach dem Muster gefragt.
Wenn er z.B. *X2008 eingibt, dann werden alle Serien, die auf "X2008" enden markiert.
Andreas
  Mit Zitat antworten Zitat
ryLIX

Registriert seit: 16. Nov 2008
Ort: Westoverledingen
264 Beiträge
 
RAD-Studio 2009 Pro
 
#16

Re: Wie am besten Daten visualisieren und auswahl verarbeite

  Alt 4. Feb 2009, 19:44
Ich hab nun angefangen mit einer Hilfstabelle ein DB TreeView zu füllen und von da aus eine ListView mit Checkboxes.
Sieht alles schon relativ nett aus aber irgendwie macht mir DISQLite3 Probleme.

SELECT SERIES, ECU, COMMENT FROM DATA WHERE COMMENT !="" Ist das Stmt was ich verwende um den Tree aufzubauen.
Seltsam ist das wenn ich im SQLiteAdministrator (der arbeitet mit ZEOS Kompos) das Stmt ausführe werden die richtigen zurück geliefert (das COMMENT holen soll dient nur der Kontrolle) aber wenn ich DISQLite3 das Stmt ausführen lass kommen auch einige Einträge die nicht da sein sollten.



Ich habe schon versucht den FeldTypen fest zu legen auf WideString aber trotzdem kommen immer noch leere Felder mit.
Es sind auch immer die gleichen.
Auch das Manuelle Editieren der Felder, um diese zu leeren, bring nix.

Edit:
Hab nun och mal den Debug laufen lassen.
Es scheint als würde es nicht an DISQLite liegen sondern daran wie ich die Tabelle aufbaue.

Hier mal der Code:
Delphi-Quellcode:
    with Main.dbqry do
    begin
      SelectSQL := 'SELECT SERIES, ECU, COMMENT FROM DATA WHERE COMMENT !="" OR COMMENT !=NULL';
      Open;
      while not Eof do
      begin
        Main.Databaseconn.Execute16('REPLACE INTO HELP (MASTER_ID, PARENT_ID, Name, Image) SELECT MASTER_ID, PARENT_ID, Name, Image FROM TreeView WHERE Name ="' + FieldByName('SERIES').AsString + '"');
        Main.Databaseconn.Execute16('REPLACE INTO HELP (MASTER_ID, PARENT_ID, Name, Image) SELECT MASTER_ID, PARENT_ID, Name, Image FROM TreeView WHERE Name ="' + FieldByName('ECU').AsString + '"');
        Next;
      end;
      Close;
    end;
Die Connection von dbqry ist Databaseconn.
Könnte es daran liegen?
Markus
Hamburflys, Scrubble-Fubble-Puff-Shake, Muffin-Purper-Gurk?
  Mit Zitat antworten Zitat
nahpets
(Gast)

n/a Beiträge
 
#17

Re: Wie am besten Daten visualisieren und auswahl verarbeite

  Alt 5. Feb 2009, 14:19
Hallo,

probiere mal bitte:SelectSQL := 'SELECT SERIES, ECU, COMMENT FROM DATA WHERE COMMENT != "" AND COMMENT IS NOT NULL'; Noch ein "blöder" Vorschlag:SELECT SERIES, ECU, COMMENT FROM DATA WHERE COMMENT is not null and COMMENT > " "
  Mit Zitat antworten Zitat
ryLIX

Registriert seit: 16. Nov 2008
Ort: Westoverledingen
264 Beiträge
 
RAD-Studio 2009 Pro
 
#18

Re: Wie am besten Daten visualisieren und auswahl verarbeite

  Alt 5. Feb 2009, 14:42
Ich hab das Problem mittlerweile Isoliert in dem ich das ganze auf zwei qrys verkürzt habe.

REPLACE INTO HELP (MASTER_ID, PARENT_ID, Name, Image) SELECT T.MASTER_ID, T.PARENT_ID, T.Name, T.Image FROM TreeView AS T WHERE T.Name IN (SELECT SERIES FROM DATA WHERE COMMENT !="")' Funktioniert wunderbar aber

REPLACE INTO HELP (MASTER_ID, PARENT_ID, Name, Image) SELECT T.MASTER_ID, T.PARENT_ID, T.Name, T.Image FROM TreeView AS T WHERE T.Name IN (SELECT ECU FROM DATA WHERE COMMENT !="")' Macht mir Probleme.
Durch den IN Operator werden alle Einträge von ECU zurück geliefert die passen aber auch welche wo doppelt vorkommen.

Sprich wenn ich bei Serie A das Steuergerät Z habe und dort ein Kommentar drin ist wird mir das geliefert.
Ist aber Steuergerät Z auch in Serie C verbaut wird mir das auch aus der TreeView Tabelle geladen obwohl dort der Kommentar bei Data leer ist.

Ich habs mit LIKE versucht aber dann wird mir nur der erste Treffer zurück geliefert.
Im Moment suche ich nach einer Möglichkeit die doppelten Felder zu entfernen wenn kein Kommentar vorhanden ist.
Markus
Hamburflys, Scrubble-Fubble-Puff-Shake, Muffin-Purper-Gurk?
  Mit Zitat antworten Zitat
nahpets
(Gast)

n/a Beiträge
 
#19

Re: Wie am besten Daten visualisieren und auswahl verarbeite

  Alt 5. Feb 2009, 16:15
Hallo,

meinst Du das?
REPLACE INTO HELP (MASTER_ID, PARENT_ID, Name, Image) SELECT T.MASTER_ID, T.PARENT_ID, T.Name, T.Image FROM TreeView AS T WHERE T.Name IN (SELECT DISTINCT ECU FROM DATA WHERE COMMENT !="")'
  Mit Zitat antworten Zitat
ryLIX

Registriert seit: 16. Nov 2008
Ort: Westoverledingen
264 Beiträge
 
RAD-Studio 2009 Pro
 
#20

Re: Wie am besten Daten visualisieren und auswahl verarbeite

  Alt 5. Feb 2009, 16:25
Nein mit DISTINCT hab ich es auch schon Probiert.
Es kann ja vorkommen das dieses Steuergerät tatsächlich 2x vorkommt und auch 2x Kommentiert wurde.

Edit.
Jetzt hatte ich die zündende Idee

So gehts:
Delphi-Quellcode:
with Main.dbqry do
    begin
      SelectSQL := 'SELECT SERIES, ECU, COMMENT FROM DATA WHERE COMMENT !="" OR COMMENT !=NULL';
      Open;
      while not Eof do
      begin
        Main.Databaseconn.Execute16('REPLACE INTO HELP (MASTER_ID, PARENT_ID, Name, Image) SELECT MASTER_ID, PARENT_ID, Name, Image FROM TreeView WHERE Name ="' + FieldByName('SERIES').AsString + '"');
        Main.Databaseconn.Execute16('REPLACE INTO HELP (MASTER_ID, PARENT_ID, Name, Image) SELECT MASTER_ID, PARENT_ID, Name, Image FROM TreeView WHERE Name ="' + FieldByName('ECU').AsString + '" AND PARENT_ID = (SELECT MASTER_ID FROM TreeView WHERE Name ="'+FieldByName('SERIES').AsString+'")');
        Next;
      end;
      Close;
    end;
Markus
Hamburflys, Scrubble-Fubble-Puff-Shake, Muffin-Purper-Gurk?
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 3     12 3      


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 09:43 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