Hi Leute,
ich bin dabei einen Filter in eins meiner Programme einzubauen, bei dem man 2 DateTimePicker hat und nur die Daten(Informationen) die zwischen diesen Daten(Kalender) liegen.
Ich habe noch einige andere Filtermöglichkeiten, die alle klappen, allerdings weiß ich nicht wie ich die Daten in einen String umgewandelt bekomme, mein Code sieht an der Stelle bis jetzt so aus
Delphi-Quellcode:
procedure TAufgabenForm.DBDurchsuchen();
var
Filter: string;
begin
// Wieviele Ergebnisse werden angezeigt
Filter := Edit3.Text;
if Filter <> '' then
SQLBefehl := 'SELECT TOP ' + Filter + ' * FROM Aufgaben WHERE Erledigt <> 1'
else
SQLBefehl := 'SELECT TOP 1 * FROM Aufgaben WHERE Erledigt = 0';
// Nach was wird gefiltert?
if (Edit1.Text <> '') then
SQLBefehl := SQLBefehl + (' AND MitarbeiterNr LIKE ''%' + StringReplace(Edit1.Text, '*', '%', [rfReplaceAll]) + '%''');
if (Edit2.Text <> '') then
SQLBefehl := SQLBefehl + (' AND MitarbeiterGruppe LIKE ''%' + StringReplace(Edit2.Text, '*', '%', [rfReplaceAll]) + '%''');
// Wenn auch nach Datum gefiltert wird
if CheckBox1.Checked then
SQLBefehl := SQLBefehl + (' AND ' + DateTimePicker1.Date + ' <= Datum AND Datum <= ' + DateTimePicker2.Date + ' '); // Hier weiß ich nicht was hin muss
// StandardSQL
SQLBefehl := SQLBefehl + (' ORDER BY Position ');
AufgabenQuery.Close();
AufgabenQuery.SQL.Text := SQLBefehl;
AufgabenQuery.Open()
end;