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

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

Определение не введённого поля [D6, XP]


Андрей_11 ©   (2009-12-23 11:15:00) 

У меня есть таблица(Paradox). Есть в таблице числовое поле. Мне надо опроеделить введено ли какое-либо число или нет.
делаю так:
If IntToStr(Query2Kolseans.Value)<>'' then
begin
x:=x+1
end

Когда делаю так:
Query1Kolseans.Value:=Query2Kolseans.Value;

То из пустого поля в другую таблицу переносится - 0.
А мне надо запретить ползователю некие действия если он не ввёл в это поле цифру.
с полями типа String, так получается, а Integer?
Подскажите!!!


Андрей_11   (2009-12-23 13:17:00) [1]

Спасибо! заработало - If not Query2Kolseans.isnull then.
Попробую поставить ограничение на нужные поля NOT NULL.


Sergey13   (2009-12-23 12:59:00) [2]

> [7] Андрей_11 ©   (23.12.09 12:41)
> Как исключать?

Так и исключать. Удалить все записи с незаполнеными нужными полями. Поставить ограничение на нужные поля NOT NULL.
Если поле не заполнено - запись не произойдет.
Бороться надо с причиной, а не с последствиями. Иначе последствия будут нарастать и прога только и будет делать что с ними бороться. А потом и вовсе сдуется.


Андрей_11   (2009-12-23 12:41:00) [3]

Как исключать? Т.е. часть записей скопируется, а часть нет? В моём случае этого не надо. Если не заполнены поля, я вообще не создаю новых записей, а возвращаю предыдущие записи чтобы их заполнили.


Sergey13   (2009-12-23 12:31:00) [4]

> [5] Андрей_11 ©   (23.12.09 12:09)

У тебя неправильный подход, ИМХО.
Надо не при копировании контролировать, а при записи в БД исключать "левые" неправильные записи. Зачем хранить туфту?


Андрей_11   (2009-12-23 12:09:00) [5]

MonoLife  У меня электронный журнал, который заполняется каждые сутки.
Данные меняются, но не полностью. Поэтому я сделал кнопку "копировать предыдущие сутки". Копируются данные предыдущих суток и человек меняет некоторые данные под свою смену. Но при этом поле Query2Kolseans обязательно должно быть заполнено иначе сумарный подсчет данных будет неправильный. При нажатии кнопки хочу отлавливать незаполненные поля и не давать копировать предыдущие сутки пока их не заполнят. Есть ещё текстовые обязательные поля и с ними у меня получается блокировать копирование. А поле Query2Kolseans обязательно должно быть числовым т.к. в строковое поле могут ввести букву и опять подсчёт будет неверным.


Sergey13   (2009-12-23 12:08:00) [6]

> [3] Андрей_11 ©   (23.12.09 11:40)
> Как правильно прописать?

If Query2Kolseans.isNull then


Андрей_11   (2009-12-23 11:40:00) [7]

А как? пишу:
If Query2Kolseans.Value<>isnull then
begin
//IntToStr();
x:=x+1
end

Ошибка.
Как правильно прописать?


MonoLife   (2009-12-23 11:38:00) [8]


> Андрей_11 ©   (23.12.09 11:15)  

Ну и пусть будет 0 по умолчанию?


Sergey13   (2009-12-23 11:19:00) [9]

Можно, как вариант, проверить у поля isNull


Наверх

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