AGB  ·  Datenschutz  ·  Impressum  







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

DBgrid sortieren

Ein Thema von icebreaker · begonnen am 21. Jun 2007 · letzter Beitrag vom 23. Jun 2007
Antwort Antwort
Seite 1 von 5  1 23     Letzte »    
icebreaker

Registriert seit: 3. Okt 2006
27 Beiträge
 
#1

DBgrid sortieren

  Alt 21. Jun 2007, 17:13
Datenbank: Paradox • Version: 7 • Zugriff über: ADO ?!
Guten Tag,
bin gerade dabei eine kleine Adress-Datenbank als Projektarbeit zu schreiben.
Man kann bereits Werte eingeben und die komplette Datenbank speichern/Laden.
Allerdings wäre es genial wenn ich auch noch meine Werte im DBgrid sortieren lassen könnte; also wenn man auf den jeweiligen Title clickt
wird die Spalte sortiert nach A-Z ; Z-A.
Meine Realisierung funktioniert leider überhaupt nicht, dazu muss ich sagen das wir in der Schule nicht mit "komplexen" Datenbanken arbeiten,
außerdem kenn ich mich (Bis Jetzt?!) nicht mit SQL aus.

Für das Ereignis "TitleClick" habe ich folgende Procedure: (Aus dem Forum)

als Varriablen sind
Delphi-Quellcode:
sSortColumn: String;
  bSortOrder: Boolean; // global festgelegt.

procedure TForm5.DBGrid1TitleClick(Column: TColumn);

begin
 if Column.FieldName <> sSortColumn then
  begin
    sSortColumn := Column.FieldName;
  end
  else
  begin
    bSortOrder := not bSortOrder;
  end;
  ADODataSet1.Close;
  if bSortOrder then
  begin
    ADODataSet1.CommandText := 'SELECT * FROM Table ORDER BY ' + sSortColumn;
  end
  else
  begin
    ADODataSet1.CommandText := 'SELECT * FROM Table ORDER BY ' + sSortColumn + ' DESC';
  end;
  ADODataSet1.Open;


//showmessage(column.fieldname);
end;
Dessweiteren habe ich die Komponente ADODataSet1 eingefügt und mit der DataSource verbunden.
ICh benutze Paradox7 sowie TQuerry, wenn ich das jetzt alles Starte kommt die Fehlermeldung:
Fehlende Connection oder ConnectionString!

Wie schaffen ich das es mir das DBGrid sortiert ausgiebt?!
Herrzlichen Dank für eure Hilfe,
Mfg ice

[edit=Sharky]Habe den Code mal mit den richtigen Tags versehen. Mfg, Sharky[/edit]
  Mit Zitat antworten Zitat
oki

Registriert seit: 30. Dez 2002
Ort: Brandshagen
1.819 Beiträge
 
Delphi 2007 Professional
 
#2

Re: DBgrid sortieren

  Alt 21. Jun 2007, 17:29
Hallo und herzlich willkommen in der DP!!!

Du must deine Datenbasis siortieren, dann wird sie auch so im Grid angezeigt.
So weit ich weiß, geht das über das Grid selber nicht.

Gruß oki
  Mit Zitat antworten Zitat
raiguen
(Gast)

n/a Beiträge
 
#3

Re: DBgrid sortieren

  Alt 21. Jun 2007, 17:55
@ oki
Die Sortierung über die Datenbasis versucht icebreaker ja schon

@icebreaker
EIn ADODataSet allein reicht nicht aus, um auf irgendwelcche Daten zuzugreifen, Die Fehlermeldung sagt ja schon eindeutig: es ist in den Eigenschaften KEIN ConnectionString einmgetragen
Vorgehensweise:
1) ADODataSet.ConnectionString -> Doppelklick in das leere Feld (oder auf den Ellipsenschalter)
2) Im Dialog-Fenster 'Verbindungsstring verwenden' -> Klick auf Button 'Aufbauen'
3) im Dialog Datenverknüpfungseigenschaften:
- Provider -> Microsoft JET 4.0 OLE DB Treiber
- Verbindung -> nach der AccessTabelle suchen (Klick auf den ...-Button)
danach auf VErbindung testen

Wenn das alles soweit funzt, dann sollte auch die ADODataSet-Abfrage funktionieren ...
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.537 Beiträge
 
Delphi 11 Alexandria
 
#4

Re: DBgrid sortieren

  Alt 21. Jun 2007, 18:32
Es geht nicht um Access, sondern um Paradox (laut Threadtitel)
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
icebreaker

Registriert seit: 3. Okt 2006
27 Beiträge
 
#5

Re: DBgrid sortieren

  Alt 21. Jun 2007, 22:22
Erstmal: Ganz leib das ihr mir gleich so helft.
Hab das alles so gemacht, anstatt bei Verbindungen Acess Datei habe ich meine Paradox 7 genommen ("adressen.db").
Doch wenn ichs sortieren will kommt folgende Fehlermeldung:
Im Project Project1.exe ist eine Exeption der Klasse EOleExeption mit der Meldung " Nicht erkennbaresDatenbbankformat 'C:\.....\adressen.db" aufgetreten.
Beim Verbindungstest sagt er auch gleich:
Nicht erkennbares Datenbankformat.
Eine Acces Datenbank konnte ich nicht anlegen, da zeigt er ne Fehlermessage mit dem Inhalt: -2147221164.
Mfg ice
  Mit Zitat antworten Zitat
Benutzerbild von joachimd
joachimd

Registriert seit: 17. Feb 2005
Ort: Weitingen
672 Beiträge
 
Delphi 10.4 Sydney
 
#6

Re: DBgrid sortieren

  Alt 22. Jun 2007, 07:38
nimm statt der AdoDataSet eine TQuery...binde dann diese Query an Dein Grid über eine TDatasource.
Joachim Dürr
Joachim Dürr Softwareengineering
http://www.jd-engineering.de
  Mit Zitat antworten Zitat
icebreaker

Registriert seit: 3. Okt 2006
27 Beiträge
 
#7

Re: DBgrid sortieren

  Alt 22. Jun 2007, 10:20
Hmm also es funktioniert nicht, außerdem habe ich es wahrscheinlich falsch umgesetzt.
Also ich habe:
1.Mein ADODataset durch ein weiteres Tquerry (querry2) ersetzt.
2.Das querry2 an die datasource1 angebunden
3.Den Quelltext wie folgt verändert:

Delphi-Quellcode:
 if bSortOrder then
  begin
    query2.CommandText := 'SELECT * FROM Table ORDER BY ' + sSortColumn;
  end
  else
  begin
   query2.CommandText := 'SELECT * FROM Table ORDER BY ' + sSortColumn + ' DESC';
  end;
  query2.Open;
Allerdings hat Tquerry ja keine Eigenschaft Command Text, was soll ich dafür verwenden?

Danke für die Hilfe
Mfg ice
  Mit Zitat antworten Zitat
Benutzerbild von joachimd
joachimd

Registriert seit: 17. Feb 2005
Ort: Weitingen
672 Beiträge
 
Delphi 10.4 Sydney
 
#8

Re: DBgrid sortieren

  Alt 22. Jun 2007, 10:40
Zitat von icebreaker:
Allerdings hat Tquerry ja keine Eigenschaft Command Text, was soll ich dafür verwenden?
Query2.SQL.Text:='...';
Joachim Dürr
Joachim Dürr Softwareengineering
http://www.jd-engineering.de
  Mit Zitat antworten Zitat
icebreaker

Registriert seit: 3. Okt 2006
27 Beiträge
 
#9

Re: DBgrid sortieren

  Alt 22. Jun 2007, 11:13
Ich bin echt etwas doof, bekomms leider nicht hin, jetzt kommt:
ungültiges Schlüsselwort
Symbol-string: Table
Zeilennummer:1

Konnte im Netz nix finden, auch habe ich selber nichts gefunden, liegt das an dem 2. Querry?
Mfg ice
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.537 Beiträge
 
Delphi 11 Alexandria
 
#10

Re: DBgrid sortieren

  Alt 22. Jun 2007, 11:21
Du musst "Table" auch durch den Namen der abzufragenden Tabelle ersetzen.
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 5  1 23     Letzte »    


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:41 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