Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2014.11.23;
Скачать: [xml.tar.bz2];

Вниз

DELPHI 7:Как вывести в label текущее число записей таблицы DBGrid   Найти похожие ветки 

 
Koudelka   (2013-11-22 21:45) [0]

Всем привет. Ребятки, не получается вывести в label ( а конкретно в label2.text) сколько в данный момент отображено записей в таблице. Волнует кол-во записей, которое получается ПОСЛЕ различных фильтраций таблицы, это число должно обновляться после применения фильтрации или после удаления записи, т.е. тогда, когда кол-во записей таблицы уменьшается или увеличивается, поэтому код, который представлен ниже не подошел ( т.к. он всегда показывает одно и тоже число записей в Table,  а не число текущего кол-ва записей):

label2.Caption:="Отображено записей: " + IntToStr(datamodule2.table1.RecordCount );

пробовала и 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);

- тут вылетает ошибка Invalid use of keyword. Token: FROM.

Преподаватель предложил создать цикл и в нем посчитать сумму отобразившихся полей таблицы, которая открыта, как лучше это сделать? Или все-таки доработать эти варианты?


 
Jeer ©   (2013-11-22 22:05) [1]

Ну ты попробуй просто
*.SQL.Text := "SELECT * FROM MyTable";

и затем *.RecordCount

Хотя база не указана и возможны варианты.


 
Jeer ©   (2013-11-22 22:07) [2]

А таблицы или запрос надо переоткрывать после модификации числа записей в таблице, чудеса редко случаются.


 
[ВладОшин] ©   (2013-11-22 22:32) [3]

сдается, что не там смотрите, не того источника данных
попробуйте посмотреть у того, который прикреплен к гриду
label2.Caption:="Отображено записей: " + IntToStr(DBGrid.DataSource.DataSet.RecordCount );


> база не указана и возможны варианты.

это да..
там вообще может быть -1 :)
в некотрых случаях.


 
Koudelka   (2013-11-22 22:58) [4]

label2.Caption:="Отображено записей: " + IntToStr(DBGrid.DataSource.DataSet.RecordCount );

- не поменял ситуацию, значение label"a как и в моем примере, меняется только с переходом из одной таблицы в другую, а после фильтрации ,  к сожалению, остается прежним, хотя кол-во видимых полей меняется.


 
Koudelka   (2013-11-22 22:58) [5]

label2.Caption:="Отображено записей: " + IntToStr(DBGrid.DataSource.DataSet.RecordCount );

- не поменял ситуацию, значение label"a как и в моем примере, меняется только с переходом из одной таблицы в другую, а после фильтрации ,  к сожалению, остается прежним, хотя кол-во видимых полей меняется.


 
Koudelka   (2013-11-22 23:17) [6]

------------------Ответ найден! всем спасибо! ------------------

procedure TDataModule2.DataSource1DataChange(Sender: TObject;
 Field: TField);
begin
if DataSource1.DataSet.RecNo<>-1 then Form1.Label2.Caption:=Format("Записей: %d",[DataSource1.DataSet.RecordCount]);
end;


 
Ega23 ©   (2013-11-25 10:35) [7]


> сколько в данный момент отображено записей в таблице

Записей в НД 100, а вот в гриде отображено в данный момент только 20 например.
Через DataLink можно достучаться, там было что-то типа displaycount



Страницы: 1 вся ветка

Форум: "Начинающим";
Текущий архив: 2014.11.23;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.46 MB
Время: 0.002 c
2-1378879113
Леван
2013-09-11 09:58
2014.11.23
TDBCtrlGrid - как создавать динамически?


2-1384954189
Няшечка
2013-11-20 17:29
2014.11.23
Локальный TCP прокси с пакетным едитингом


4-1270489835
Decoding
2010-04-05 21:50
2014.11.23
CreateMessageDialog


6-1234378196
smail
2009-02-11 21:49
2014.11.23
как передать сообщение клиенту?


15-1395400552
Дмитрий СС
2014-03-21 15:15
2014.11.23
Подключение двигателя по CanOpen(Cia 402)





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский