Nochmals Danke für die Tips, werds beim nächsten Projekt beachten.
Ich benutze für das Filtern der Daten den ACCEPT-Parameter des OnFilterRecord-Ereignis der Tabel-Komponente.
Beispiel:
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12:
| procedure TDMMain.ADOTRechnungFilterRecord(DataSet: TDataSet; var Accept: Boolean); begin . . . Dat1 := StrToDate(Datum1); Dat2 := StrToDate(Datum2); Accept := ((DataSet['Datum'] >= Dat1) AND (DataSet['Datum'] < Dat2)); . . end; |
Wie gesagt, gefiltert wird richtig nur die Anzeige der Datensätze stimmt nicht. Ich hab das Delhpi-Projekt 1:1 aus D5 so übernommen und nur auf die Syntax von DDS2005Win32 angepasst (daher auch die Table-Komponenten von BDE). Für diese Anwendung lass ich das aber jetzt so, da es hier nicht auf Geschwindigkeit ankommt (werd es wie schon gesagt in den nächsten Projekten mit den Querys machen).
Falls es keine direkte Lösung gibt, muss ich mir halt eine Zählfunktion schreiben, möchte mir die Mühe aber erst mal nicht machen.