DBGRID i ilosc wyswietlanych rekordow

Odpowiedz Nowy wątek
2004-10-24 14:14
0

Witam.

Czy ktos moze mi powiedziec w jaki sposob sprawdzic ilosc wyswietlanych rekordow w komponencie DBGRID, bez wgledu na typ bazy ktora wyswietla.

Jest wiele informacji na temat DBGRID'a ale tego znalezc nie moge.

Dzieki.

Pozostało 580 znaków

2004-10-24 17:09
0

Jeśli DBGrida masz połączonego przez jakiegoś DataSource to wystarczy :

Label1.Caption := DataSource.DataSet.RecordCount

Pozostało 580 znaków

2004-10-24 17:18
0

Niestety nie o to mi chodzi bo RecordCount z DataSource pokazuje ilosc wszystkich rekordow, nie tych wyswietlanych w DBGrid..

ale dzieki...

Pozostało 580 znaków

2004-10-25 20:14
0

Czy narawde nikt nie zna odpowiedzi na ten temat ;)

Pozostało 580 znaków

2004-10-26 00:44
0

Jedyne co mi do głowy przychodzi to zbadać wielkość grida (Height), odjąć wysokoć nagłówka i podzielić przez wysokość wiersza.
Trochę zabawy z tymi wysokościami bo nie znalazłem takich własności, ale można kombinować na podstawie Fontu lub przy OnDraw sobie jakoś zczytać.
Nie wiem tylko czy gra jest warta świeczki.


Kris

Pozostało 580 znaków

2004-10-26 19:38
0

Moze sie zle wyrazilem na poczatku, ale chodzi mi dokladnie o ilosc rekordow w DBGRId (nie tylko tych widocznych).
Na przyklad w momencie filtrowania bazy powiazanej z DBGRID chcialbym znac ilosc znalezionych rekordow, czyli tych w DBGRID (bez wzgledu na rodzaj obslugiwanej bazy).

Pozostało 580 znaków

2004-10-26 23:34
0

To chyba nie rozumiem.
Na mój rozum to DBGrid pokazuje tyle wierszy ile ma DataSet z nim powiązany czyli RecordCount, ale to już było i Ci nie pasowało.
To musisz chyba jaśniej.


Kris

Pozostało 580 znaków

2004-10-27 20:07
0

To sprobuje inaczej wyjasnic:
Mam DBGRID i DATASOURCE powiazany z komponentem obslugujacym pliki DBF (bez BDE)
W momencie filtrowania bazy czyli np. szukania wszystkich rekordow zaczynajacych sie na litere np.: 'A' chcialbym wiedziec ile rekordow znalazl.
Kiedy sie odwoluje do DATASOURCE to pokazuje mi ilosc wszystkich rekordow bazy.
I tak samo jak sie odwoluje bezposrednio do komponentu "DBF".
Ale wyniki w DBGRID dobrze pokazuje.
Dlatego chcialbym wiedziec jak odczytac ilosc komponentow ktore zostaly "zaladowane" do DBGRIDa.

Moze teraz troche jasniej..

Pozostało 580 znaków

2004-10-28 00:20
0

To w takim razie albo coś źle robisz, albo komponenty do obsługi DBF są do bani :(
Jeżeli DataSource jest powiązany z jakimś Query lub Table, to po filtrowaniu (przez Filter, lub SQL) DataSet.RecordCount zwraca ilość wyfiltrowanych rekordów. Przynajmniej napewno tak jest w przypadku Query :)

Pozostało 580 znaków

2004-10-28 10:56
0

ja to mam tak:

begin
Data.qrPacjenci.Close;
Data.qrPacjenci.Sql.Clear;
Data.qrPacjenci.Sql.Add('SELECT * from pacjenci where nazwisko like '+u+edit1.Text+'%'+u);
Data.qrPacjenci.ExecSql;
Data.qrPacjenci.Open;
oso:= Data.qrPacjenci.RecordCount;
Data.qrBadanie.RecordCount;
Statusbar1.Panels[0].Text:='Znaleziono '+IntToStr(oso)+' pozycje w bazie.';
end

wyrwane z procedury if ... then


"...tylko dwie rzeczy są nieskonczone, wszechświat i ludzka głupota, lecz co do tej pierwszej nie mam pewności..."

Pozostało 580 znaków

2004-10-28 23:01
0

Zgadzam się z Młodym. Albo się walnąłeś albo komponenty masz do bani.
Przed chwilą zbadałem Filter w TTable bo używam TQuery i nie byłem pewien.
Na Postgresie z Zeosem jest OK.


Kris

Pozostało 580 znaków

Odpowiedz
Liczba odpowiedzi na stronę

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