Dobry den,
V DBGrid mam 4ri Zahlavi ktere se nacitaji z DB. IDZAMEST, JMENO, PRIJMENI, PLAT.
Jak to jednoduse udelat aby pri kliknuti na zahlavi se mi udaje podle toho radili napriklad podle jmena kdyz kliknu na zahlavi JMENA. Pouzivam IBQuery kde mam v SQL dano co se ma nacitat a DataSource.
Nasel jsem hodne prikladu pro ADO ale nemuzu najit nic pro InterBase.
Predem dekuji za jednoduchy priklad.
Ja prave napsal neco takoveho :
procedure TForm1.DBGrid1TitleClick(Column: TColumn);
var s: String;
begin
with IBQuery1 do begin
s:= 'SELECT ZAMESTNANEC.IDZAMEST, ZAMESTNANEC.JMENO,ZAMESTNANEC.PRIJMENI, ZAMESTNANEC.KOSILE, ZAMESTNANEC.ZAKLADNIPLAT + ZAMESTNANEC.OHODNOCENI AS vychoziplat FROM ZAMESTNANEC ORDER BY ZAMESTNANEC.PRIJMENI' ;
// + DBGrid1.SelectedField.FieldName ;
s:=s+' DESC';
Close;
SQL.Clear;
SQL.Add(s);
Open;
end;
end;
Puvodne za ORDER BY bylo to co je za // ale z nejakeho duvodu to vypisuje jen IDZAMEST tak jsem tam dal ZAMESTNANEC.PRIJMENI jenomze mi to funguje zaprve jen v jednom smeru a zadruhe kdybych chtel kliknout na jiny sloupec musel bych pokazde menit kod.
Nevim jak zjistim pri kliknuti na zahlavi sloupce aktualni stav razeni jesli je ASC nebo DESC
a nevim proc mi to pri kliknuti na zahlavi pise jen IDZAMEST a ne i ostatni kdyz kliknu treba na zahlavi PRIJMENI.
Dekuji za odpoved.