AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Delphi Daten aufsteigend sortieren

Daten aufsteigend sortieren

Ein Thema von Thomm · begonnen am 31. Aug 2008 · letzter Beitrag vom 1. Sep 2008
Antwort Antwort
Seite 1 von 3  1 23   
Thomm

Registriert seit: 16. Aug 2008
Ort: Nürnberg
73 Beiträge
 
Turbo Delphi für Win32
 
#1

Daten aufsteigend sortieren

  Alt 31. Aug 2008, 16:39
Datenbank: MyBase • Zugriff über: Clientdataset
Ich wollte die Daten in meiner Datenbank aufsteigend sortieren.

Das Feld heißt 'Abfahrtszeit' und umfasst Datum und Uhrzeit (z.B. 12.08.2007 19:57:45)

Delphi-Quellcode:
procedure TForm1.Oeffnen1Click(Sender: TObject);
begin
Clientdataset1.IndexDefs.Add('IDAbfahrtszeit', 'Abfahrtszeit', [ixCaseInsensitive]) ;
.
.
.
.

end;;
Was ist daran falsch ?
Gruß

Thomas
  Mit Zitat antworten Zitat
grenzgaenger
(Gast)

n/a Beiträge
 
#2

Re: Daten aufsteigend sortieren

  Alt 31. Aug 2008, 16:55
die anordnung der daten in der db ist sache der db und nicht beinflussbar.

was du machen kannst, ist die ausgabe entsprechend deinen wünschen zu sortieren.
  Mit Zitat antworten Zitat
Benutzerbild von eddy
eddy

Registriert seit: 3. Jan 2003
Ort: Sachsen
573 Beiträge
 
Delphi 5 Professional
 
#3

Re: Daten aufsteigend sortieren

  Alt 31. Aug 2008, 16:57
Hallo Thomm,

probier's damit:

Clientdataset1.IndexDefs.Add('IDAbfahrtszeit', 'Abfahrtszeit', [ixCaseInsensitive, ixDescending]); mfg
eddy
  Mit Zitat antworten Zitat
Thomm

Registriert seit: 16. Aug 2008
Ort: Nürnberg
73 Beiträge
 
Turbo Delphi für Win32
 
#4

Re: Daten aufsteigend sortieren

  Alt 31. Aug 2008, 17:05
Zitat von eddy:
Hallo Thomm,

probier's damit:

Clientdataset1.IndexDefs.Add('IDAbfahrtszeit', 'Abfahrtszeit', [ixCaseInsensitive, ixDescending]); mfg
eddy
Habs probiert, funktioniert nicht
Gruß

Thomas
  Mit Zitat antworten Zitat
grenzgaenger
(Gast)

n/a Beiträge
 
#5

Re: Daten aufsteigend sortieren

  Alt 31. Aug 2008, 17:49
<delete>
  Mit Zitat antworten Zitat
Thomm

Registriert seit: 16. Aug 2008
Ort: Nürnberg
73 Beiträge
 
Turbo Delphi für Win32
 
#6

Re: Daten aufsteigend sortieren

  Alt 31. Aug 2008, 17:53
Irgendwie muss man doch die Einträge sortieren können.

Gibts doch nicht.

Vielleicht hat DBGrid ne Eigenschaft zum Sortieren.
Gruß

Thomas
  Mit Zitat antworten Zitat
Benutzerbild von Chemiker
Chemiker

Registriert seit: 14. Aug 2005
1.858 Beiträge
 
Delphi 11 Alexandria
 
#7

Re: Daten aufsteigend sortieren

  Alt 31. Aug 2008, 18:05
Hallo Thomm,

natürlich kann man die Einträge sortieren.



Delphi-Quellcode:
var
  IndexName: String;
begin
  IndexName:= 'KDNachName'+'Index';
  DM.KundeClientDataSet.AddIndex(IndexName, 'KDNachName',
                                                   [ixCaseInsensitive],'','',0);
  DM.KundeClientDataSet.IndexName:= IndexName;


Wenn Du die Spalten in einem DBGrid sortieren willst, kann man durch das Anklicken der Namen in der Spalten sortieren. Allerdings funktioniert die Sortierung nur absteigend.

Delphi-Quellcode:
procedure TfrmHauptFormular.KundenDBGridTitleClick(Column: TColumn);
begin
  try
    DM.KundeClientDataSet.IndexFieldNames := Column.FieldName;
  except
    ShowMessage('Das Feld kann nicht sortieren' + Column.FieldName);
end;

Bis bald Chemiker
wer gesund ist hat 1000 wünsche wer krank ist nur einen.
  Mit Zitat antworten Zitat
Thomm

Registriert seit: 16. Aug 2008
Ort: Nürnberg
73 Beiträge
 
Turbo Delphi für Win32
 
#8

Re: Daten aufsteigend sortieren

  Alt 31. Aug 2008, 18:25
Zitat von Chemiker:
Hallo Thomm,

natürlich kann man die Einträge sortieren.



Delphi-Quellcode:
var
  IndexName: String;
begin
  IndexName:= 'KDNachName'+'Index';
  DM.KundeClientDataSet.AddIndex(IndexName, 'KDNachName',
                                                   [ixCaseInsensitive],'','',0);
  DM.KundeClientDataSet.IndexName:= IndexName;
Bis bald Chemiker
Hallo Chemiker

Das funktioniert nicht ganz.

Sortiert zwar die Einträge, aber da diese Datumsformat [dd.mm.yyyy hh:mm:ss]
haben, sortiert er nur nach der ersten Ziffer, aber nicht nach dem Datum .

so z.B.

01.08.2008 17:45:55
02.09.2008 13:45:13
08.01.2007 12:55:12
10.04.2008 11:23:45
Gruß

Thomas
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.851 Beiträge
 
Delphi 11 Alexandria
 
#9

Re: Daten aufsteigend sortieren

  Alt 31. Aug 2008, 18:32
Was für einen Typ hat das Feld?
Markus Kinzler
  Mit Zitat antworten Zitat
grenzgaenger
(Gast)

n/a Beiträge
 
#10

Re: Daten aufsteigend sortieren

  Alt 31. Aug 2008, 18:34
auch wenn ich mich wiederhole, eine SQL DB kennt keine sortierung auf satzebene, wie die DB die sätze abspeichert ist ausschliesslich der angelegenheit des DBMS.

ggf. kann es sein, dass sich das DBMS so verhält wie erwartet, das ist aber reiner zufall und muss nicht heissen, dass dies auch in 2 monaten noch so ist...

daher, sortiert man die ausgabe aus der DBMS.. hierzu wird i.a.R. der select .. order by ... zur verfügung gestellt.

alternativ kannst du auch per hand sortieren...


d.h. wenn du deine daten nur visualisieren willst, nimm 'n tQuery statt 'n tTable ... und sag es via SQL wie du deine daten aufbereitet haben möchtest...

wenn du deine daten noch zusätzlich bearbeiten willst... (neue sätze einfügen, etc.) ist handarbeit angesagt...
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 3  1 23   

Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

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