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

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

Как добавить элемент в DBLookupComboBox? [D7, XP]


Страницы:   1 2

deras ©   (2008-04-24 13:37:00) 

Заполняю DBLookupComboBox записями из таблицы. Как добавить первым в списке DBLookupComboBox элемент типа "Нет значения" с KeyValue=-1, а далее в списке все записи таблицы
Это надо для того, чтоб пользователь мог и не выбрать ничего из списка, а я мог бы сохранить в другую таблицу значение -1, как результат того, что ничего не было выбрано


deras   (2008-04-24 15:42:00) [21]


> Sergey13 ©   (24.04.08 15:23) [16]

Честно говоря, сам не знаю, но когда union all, то почему-то значений 'Нет значения' ровно столько, сколько записей в таблице (наборе данныз)

Понимаю.... резонное замечание с вашей стороны, господа эксперты - "учи матчать" :-)


Sergey13   (2008-04-24 15:23:00) [22]

> [14] deras ©   (24.04.08 15:07)

Интересно почему?


Ega23   (2008-04-24 15:09:00) [23]


ALL

Incorporates all rows into the results, including duplicates. If not specified, duplicate rows are removed.


В твоём случае - без разницы. Просто All - это уже привычка, на автомате вылетает...


deras   (2008-04-24 15:07:00) [24]


> Ega23 ©   (24.04.08 14:31) [7]


позвольте сделать маленькую поправочку...
мне кажеться надо использовать не union all, а просто union


Ega23   (2008-04-24 14:53:00) [25]


> Я имею в виду, что записывать в главную таблицу ничего не
> надо, при НЕ выбранном значении справочника.


А... Я тебя в [9] неточно понял.


Sergey13   (2008-04-24 14:47:00) [26]

> [10] Ega23 ©   (24.04.08 14:42)

Я имею в виду, что записывать в главную таблицу ничего не надо, при НЕ выбранном значении справочника.


deras   (2008-04-24 14:47:00) [27]


> Ega23 ©   (24.04.08 14:31) [7]


> Sergey13 ©   (24.04.08 14:34) [8]


Так супер! все подходит. Спасибо большое!


Ega23   (2008-04-24 14:42:00) [28]


> Вообще-то классика жанра вроде рекомендует туда ничего не
> записывать, точнее записывать значение NULL.
>


Стандартный DBLookupCombo на null вроде как не позиционируется...


Sergey13   (2008-04-24 14:40:00) [29]

> [0] deras ©   (24.04.08 13:37)
> а я мог бы сохранить в другую таблицу значение
> -1, как результат того, что ничего не было выбрано

Вообще-то классика жанра вроде рекомендует туда ничего не записывать, точнее записывать значение NULL.


Sergey13   (2008-04-24 14:34:00) [30]

> [5] deras ©   (24.04.08 14:18)
> Я так понимаю, должна быть "дежурная" запись в таблице со
> значением "Нет значения" и id=-1 ?

Можно и так, если не мешает. Можно в запросе добавить типа
select * from table
union all
select -1,'Нет значения' from чего-то-такое

можно просто вставить запись в ДАТАСЕТ, не фиксируя изменений в БД.


Ega23   (2008-04-24 14:31:00) [31]

Select -1 as id, 'Нет значения' as Value
union all
Select id, Value from Table1


И не надо ничего выдумывать, "всё уже украдено до нас" (с)


Сергей М.   (2008-04-24 14:20:00) [32]


> должна быть "дежурная" запись в таблице


Не в таблице а в наборе данных. Это не одно и то же.


deras   (2008-04-24 14:18:00) [33]


> Ты его руками заполняешь что ли?

не руками естств... Я так понимаю, должна быть "дежурная" запись в таблице со значением "Нет значения" и id=-1 ?


> В DBLookupComboBox нет записей

Я имел ввиду записи таблицы


Anatoly Podgoretsky   (2008-04-24 14:11:00) [34]

> deras  (24.04.2008 13:37:00)  [0]

В DBLookupComboBox нет записей.


Sergey13   (2008-04-24 14:01:00) [35]

> [2] deras ©   (24.04.08 13:44)
> при каждом заполнении

Ты его руками заполняешь что ли?


deras   (2008-04-24 13:44:00) [36]

то что, при каждом заполнении DBLookupComboBox добавлять запись?


Sergey13   (2008-04-24 13:40:00) [37]

> [0] deras ©   (24.04.08 13:37)

Добавь в датасет, на который смотрит комбик, такую запись.


Страницы:   1 2

Наверх

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