Delphi 7 cum se imprimă numărul curent de înregistrări în tabelul dbgrid din etichetă

DELPHI 7: Cum se imprimă numărul curent de intrări de tabel DBGrid într-o etichetă

Bună ziua tuturor. Băieți, nu este posibil să se afișeze în etichetă (și în special în label2.text) câte înregistrări sunt afișate în prezent în tabel. Exită numărul de înregistrări obținute după diferitele filtrare ale tabelului, acest număr ar trebui să fie actualizat după aplicarea filtrării sau după ștergerea înregistrării, adică atunci când numărul de înregistrări ale tabelului scade sau crește, codul prezentat mai jos nu se potrivește (deoarece arată întotdeauna același număr de înregistrări în tabel, # xA0; nu numărul numărului actual de înregistrări):







label2.Caption: = "Înregistrări afișate:" + IntToStr (datamodule2.table1.RecordCount);

Încercat și opțiunea 2:

datamodule2.Query1.Active:= false;
datamodule2.Query1.SQL.Clear;
datamodule2.Query1.SQL.Add ("SELECT COUNT (*) AS" "COUNT" "FROM [ABONENT]");
datamodule2.Query1.Active:= TRUE;
label2.caption: = IntToStr (datamodule2.Query1.RecordCount);

- aici zboară eroarea Utilizarea nevalidă a cuvântului cheie. Token: FROM.

Profesorul a oferit să creeze o buclă și în ea să calculeze suma câmpurilor afișate ale tabelului, care este deschisă, cât de bine se poate face acest lucru? Sau rafinați încă aceste opțiuni?







Încearcă
* .SQL.Text: = "SELECT * FROM MyTable";

și apoi * .RecordCount

Deși baza de date nu este listată și opțiunile sunt posibile.

Un tabel sau o interogare trebuie să fie redeschisă după modificarea numărului de înregistrări din tabel, se întâmplă rareori minuni.

Se supune, că nu arăta acolo, nu că sursa de date
încercați să vă uitați la cea care este atașată la rețea
label2.Caption: = "Înregistrări afișate:" + IntToStr (DBGrid.DataSource.DataSet.RecordCount);


> baza de date nu este listată și opțiunile sunt posibile.

acest lucru este da ..
acolo, în general, poate fi -1 :)
în unele cazuri.

label2.Caption: = "Înregistrări afișate:" + IntToStr (DBGrid.DataSource.DataSet.RecordCount);

- nu a schimbat situația, eticheta de valoare "a ca în exemplul meu, se modifică numai cu trecerea de la o tabelă la alta și după filtrare. # xA0; din păcate, rămâne aceeași, deși numărul câmpurilor vizibile se schimbă.

label2.Caption: = "Înregistrări afișate:" + IntToStr (DBGrid.DataSource.DataSet.RecordCount);

- nu a schimbat situația, eticheta de valoare "a ca în exemplul meu, se modifică numai cu trecerea de la o tabelă la alta și după filtrare. # xA0; din păcate, rămâne aceeași, deși numărul câmpurilor vizibile se schimbă.

procedura TDataModule2.DataSource1DataChange (Expeditor: TObject;
# xA0; Câmpul: TField);
începe
dacă DataSource1.DataSet.RecNo<>-1 apoi Form1.Label2.Caption: = Format ("Records :.", [DataSource1.DataSet.RecordCount]);
se încheie;


> câte înregistrări sunt afișate în prezent în tabel

Înregistrează în ND 100, dar în grila afișată în prezent doar 20, de exemplu.
Prin intermediul DataLink este posibil să se ajungă, acolo a fost ceva de tip displaycount

Memorie: 0,73 MB
Durată: 0,029 secunde







Articole similare

Trimiteți-le prietenilor: