Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

пустые поля [D6, Paradox]


Andy Eremin ©   (2003-03-06 08:47:00) 

Уважаемые Мастера!
Подскажите, как в сетке DBGrid пустые поля отображать как "0".
Альтернатива:
Пустые поля парадоксовской таблицы заменять на ноль.
P.S. Default Value (установленный в Database Desktop) не помогает


Andy Eremin   (2003-03-06 10:40:00) [1]

Спасибо, спасибо, спасибо
ВСЕМ ВСЕМ ВСЕМ


VAleksey   (2003-03-06 10:34:00) [2]

Ну слушай ну ведь ты пойми что объяснять очень долго, а народ в основном занятой. Да и вкнигах эту информацию можно легко найти.
Поэтому никто и не расшибается.
1) По квери правой кнопкой щелк
2) Пункт Add All Fields или что-то вроде него
3) Все поля добавь
4) на нужном поле с суммой двойной щелчок
5) пишешь как
> Lord Warlock © (06.03.03 10:11)


ЗЫ
Если это квери, то открой его перед выполнением этих операций.


Andy Eremin   (2003-03-06 10:23:00) [3]

Люди! Объясните, как вызвать функцию и куда поставить запрос на ее вызов?


Andy Eremin   (2003-03-06 10:17:00) [4]

2 passm:
Хорошо. Только маленький вопросик:
При вызове функции
TForm7.Table1SumGetText(Query1.FieldByName("Quantity"));
чего не хватает?


Lord Warlock   (2003-03-06 10:11:00) [5]


> Andy Eremin ©


Если ты оставишь DisplayFormat и поставишь DefaulExpression=0 то новые записи будут отображаться по маске.

или можно сделать так:

procedure TForm1.Table1ИмяПоляGetText(Sender: TField; var Text: String;
DisplayText: Boolean);
begin
if Text="" then
Text:="0";
end;


passm   (2003-03-06 10:06:00) [6]

Andy Eremin © (06.03.03 10:02)> Это описание события и реализовывать его придется самому.


Andy Eremin   (2003-03-06 10:02:00) [7]

2 passm, 2 VAleksey
Эти процедуры стандартные, или их мне самому необходимо описать?
Простите за глупый вопрос, но я действительно не знаю, как ими воспользоваться - новичок я.


AlexSerp   (2003-03-06 10:00:00) [8]

Ну и что, что формируется SQL-запросом.
Даже если запрос формируется в RUN-тайме
все-равно возможно повесить обработчик.


VAleksey   (2003-03-06 09:54:00) [9]

procedure TForm1.Table1SumGetText(Sender: TField; var Text: String;
DisplayText: Boolean);
begin
if Text<"0" then Text:="Бла";
end;
Ну и так далее. Т.е. как хочешь делай парсинг строки и в переменную Text пиши все что хочешь :)


Andy Eremin   (2003-03-06 09:48:00) [10]

2 Lord Warlock
>Такого не может быть, какой тип поля?
Float


passm   (2003-03-06 09:42:00) [11]

TField.GetText(Sender: TField; var Text: String; DisplayText: Boolean);
begin
if Sender.IsNull then
Text:= "0"
else
Text:= Sender.AsString
end;


Lord Warlock   (2003-03-06 09:42:00) [12]


> Andy Eremin © (06.03.03 09:34)
> 2 stone
> Маска задана: ,0.####
> Эффекта нет.


Такого не может быть, какой тип поля?


Andy Eremin   (2003-03-06 09:34:00) [13]

2 stone
Маска задана: ,0.####
Эффекта нет.

2 AlexSerp
Поле формируется SQL-запросом. Поля кучей кидаются, а не по-очереди. Так что метод не подходит.

2 Mike Kouzmine
Спасибо за "содержательный" ответ. Если можно, объясните поподробнее


stone   (2003-03-06 09:26:00) [14]

у TField есть свойство DisplayFormat, задай в нем маску и не парься


AlexSerp   (2003-03-06 09:22:00) [15]

Все что есть проапдейть на 0.
На поле повесь обработчик, при сохранении пустые заменяй на 0.


Mike Kouzmine   (2003-03-06 09:01:00) [16]

Возможно события прорисовки сетки, возможно, получения данных


Наверх

Титульная страница Поиск, карта сайта Написать письмо