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

Вниз

Пустая строка в DBGrid   Найти похожие ветки 

 
Alex9801   (2002-07-18 11:14) [0]

Здравствуйте.
Есть открытый DataSet, не содержащий ни одной записи. И есть связанный с ним DBGrid. Что нужно сделать, чтобы DBGrid НЕ отображал одну пустую строку?


 
Alexandr   (2002-07-18 11:17) [1]

вообще-то так принято.
А если хочешь по-другому, то извращаться надо...


 
Evgeny7   (2002-07-18 11:31) [2]

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


 
Alex9801   (2002-07-18 12:18) [3]

Попробую еще раз объяснить ситуацию. Есть некий DataSet - TQuery, TClientDataSet, TAdoStoredProc, ... в общем любой. Он открыт, т.е. Active=True и содержит НОЛЬ записей, т.е. RecordCount = 0. Почему так - причин может быть много: действительно пустая таблица, в условиях Where не отобралось ни одной записи, наложен фильтр (в клиенте) скрывший все записи... DataSet может позволять добавлять в него новые записи, а может быть вообще ReadOnly. А DBGrid при этом отображает ОДНУ ПУСТУЮ СТРОКУ.

Теперь насчет "так принято": Access отображает пустую строку в НД только в том случае, если в этот НД можно записи ДОБАВЛЯТЬ (причем вне зависимости от кол-ва имеющихся записей!!!) и она всегда выделена звездочкой: "*"; если НД ReadOnly, то ее она не показывается. PowerBuilder в DataWindow показывает пустую строку, только после явноко вызова DataWindow.Append и при этом RowCount >= 1 становится автоматически.
Для меня ситуация, когда DataSet содержит 0 записей не может отождествляться с ситуацией когда он содержит 1 запись в которой все видимые поля = NULL или "" !!! Потому что в последнем случае могут быть непустые поля не показанные в гриде.
Неужели все смирились с этой ситуацией, а?


 
mike kouzmine   (2002-07-18 13:55) [4]

А что тут смиряться. Раз пусто, значит данных нет. Можешь изменить рисование DBGrid
if dbgrid.datasource.dataset.recordcount = 0 then
dbgrid.canvas. и т.д.


 
Viewer   (2002-07-18 14:01) [5]

Закрывай датасет после проверки на = 0



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

Форум: "Базы";
Текущий архив: 2002.08.08;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.45 MB
Время: 0.006 c
1-23994
Brand
2002-07-28 00:29
2002.08.08
Работа с реестром


3-23924
Cranium
2002-07-18 12:51
2002.08.08
Формат даты в ACCESS


1-24126
cherepovets
2002-07-26 17:18
2002.08.08
Панель задач


14-24169
Evyshka
2002-07-12 08:59
2002.08.08
Advantage database Server


7-24252
SergeyDon
2002-05-23 13:59
2002.08.08
Как заставить Win_XP





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский