Filtrowanie w dbgrid

0

Witajcie.
Jak w komponencie dbgrid zrobic filtrowanie zeby wyswietlily sie pola zaczynajace sie np na t*.
Tabela ma jedna kolumne o identyfikatorze NAZWA.
Pozdrawiam i wiekie dzieki za kazde info.

0

Zamiast TTable użyj TQuery i zapytanie coś w rodzaju:

  
with Query1.SQL do
  begin
    Close;
    Clear;
    Add('Select * from nazwa_tabeli where nazwa_pola like :wszystkie_na_t');
    ParamByName('wszystkie_na_t').AsString := 't%';
    Open;
 end;
0

Albo użyj filtrowania (właściwości Filter, Filtered, OnFilterRecord). Na krótką metę jest to wygodne i szybkie.

0

Z ta petla while sobie odpusc bo nie jest potrzebna jesli chcesz miec w query wszystkie wyniki (bo np wyk. to gdzie indziej) to mozesz sobie nalozyc filtr wtedy robisz to tak:

Do komponentu np w zeosach TZQuery (Nazwijmy je "qrZap") w opcji SQL dodajesz kod np taki:
select * from tabel1_docelowa a opcje filtered w object inspektorze ustawiasz na true a w filtr robisz nazwa_pola (like 't%') czy jak to tam w twojej bazie wyglada (ograniczenie do nazw zaczynajacych sie od T)

teraz dodajesz komponent TDataSource i w opcji DataSet wybierasz nasze qrZap

Nastepnie dodajesz w opcji DataSet swojego dbgrida powyzszego TDataSource i po klopocie ... pamietaj ze DBGrid jest to kontrolka ktora glownie wyswietla to co dane query poobiera z bazy i w wiekszosci przypadkow nie nalezy dzialac na gridzie

0

Ja tam żadnej pętli while nie widzę, a o filtrowaniu napisałem 3 godziny wcześniej.

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