DBGrid ...

0

Szukam odpowiedzi na pytania:
Co zrobić aby móc sortowac dane w dbgridzie wyświetlane poprzez naciśnięcie kolumny o nazwie nazwisko na przykład. Jest kolumna która się nazywa Nazwikso i jak klikne w nią to mi sie sortują według niej dane. Oraz co zrobić aby móc komórki w tabelach tworzonych w Paradoxie nazywać nazwami posiadającymi spacje. Łacze tabele za pomoca SQLa bo brzydko wygląda komórka o nazwie oddzielanej podkreslnikami. A moze ma ktoś lepszy pomsył jak wyświetlac dane prócz dbgrida i DBtext? Prosze o pomoc. Używam D6 Enterprise

0

Metoda nie należąca do najszybszych, najlepiej wykorzystac zapytania SQL i sortować po stronie serwera
procedura jest zdarzeniem onTitleClick w DBGrid

procedure TAudioB.DBGridTitleClick(Column: TColumn);
var
t : String;
begin
// zmiana i reorganizacja :)
if Column.Title.Caption = 'LP' then
exit;
if OptSortTypeDB.poczym = Column.FieldName then
OptSortTypeDB.Normal := not OptSortTypeDB.Normal
else
begin
OptSortTypeDB.poczym := Column.FieldName;
OptSortTypeDB.Normal := True;
end;
If OptSortTypeDB.Normal then
t := 'ASC'
else
t := 'DESC';
DBTable.Sort := OptSortTypeDB.Poczym+ ' '+ t+', Autor, Nazwa_Albumu, Nazwa_Utworu';
end;

brak jest tylko sortowanie bez zaznaczania poczym jest sortowanie

0

Wszytsko jest OK tylko ze pokazuje mi błędy przy kompilacji że nie zna "OptSortTypeDB". Oraz co mam wpisac zamist tego słowa "poczym"??
Pozdrawiam

0

var
// globalne
poczym :string;
Normal :boolean;

procedure TAudioB.DBGridTitleClick(Column: TColumn);
var
t : String;
begin
if poczym = Column.FieldName then
Normal := not Normal
else
begin
poczym := Column.FieldName;
Normal := True;
end;
If Normal then
t := 'ASC'
else
t := 'DESC';
DBTable.Sort :=Poczym+ ' '+ t+ ', Autor, Nazwa_Albumu, Nazwa_Utworu'; // to co masz po t+ w '' mozesz wywalic bo to sa kolejne pola po ktorych sortuje
end;

teraz powinno dzialac

0

Rozumiem wsistko to tylko wywala błąd prz końcówce przy "DBTable" Pisze że nie zna takiego czegoś. Ja próbowałem sortowanie dopisac do SQLa za pomocą klauzuli Order by ale jest to mało poręczne. Prosze o pomoc jeszcze w tej ostatniej linijce
Pozdrawiam i dzięki

0

THX juz działa mi sortowanie. A jeszcze mam taka małą prośbe jak do tej Kolumny wstawić taki mały trójkącik który by pokazywał czy sortuje sie malejąco czy rosnąco. Nie mam pojęcia jak go tam wsadzić i co zrobić żeby on sie zmieniał na zwykły i odwrócony. poza tym jeszcze jak naciskam na Title w Columnie to mogła by sie ona wciskać :) Chyba wiecie o co chdozi Tak jak button podczas klikania sie robi wklęsły to zeby tak sie ta kolumna tez robiła. Był bym widzieczny za pomoc. THX Pozdrawiam

1 użytkowników online, w tym zalogowanych: 0, gości: 1