Hallo
Ich möchte in einem DBGrid spalten sortieren.
Dazu verwende ich folgenden Code:
Delphi-Quellcode:
var
bSortOrder: Boolean;
btn_Caption: string;
procedure TForm5.Alle(Sender: TObject);
var
btn_Caption: string;
begin
btn_Caption := (Sender as TButton).Caption;
end;
procedure TForm5.DBGrid1TitleClick(Column: TColumn);
var
sSortColumn: String;
begin
sSortColumn := DBGrid1.Columns.Items[Column.Index].FieldName;
ADOQuery1.Close;
if bSortOrder then
if btn_Caption = 'Test1' then
begin
ADOQuery1.SQL.Text:= 'SELECT * FROM abc WHERE test like ' + QuotedStr(btn_Caption + '%') + ' ORDER BY ' + sSortColumn;
end
else
begin
ADOQuery1.SQL.Text:= 'SELECT * FROM abc WHERE test like '+ QuotedStr(btn_Caption + '%') + ' ORDER BY ' + sSortColumn + ' DESC';
end;
ADOQuery1.Open;
bSortOrder := not bSortOrder;
end;
Aber ich kann leider den Fehler nicht finden. Vielleicht könnt ihr mir weiterhelfen?