Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.05.30;
Скачать: CL | DM;

Вниз

Подстановочные поля   Найти похожие ветки 

 
Михаил   (2004-05-06 12:54) [0]

Имеется запрос в TQuery на выборку данных из двух связанных таблиц в DBGrid. Пытаюсь реализовать добавление записей в таблицу через TUpdateSQL. Есть два lookup-поля. Как сделать, чтобы в эти поля можно было при добавлении новой записи не только выбирать данные из подстановочной таблицы, но и заносить новые.


 
Соловьев ©   (2004-05-06 12:56) [1]


> но и заносить новые.

заносиш в подстановочную таблицу.


 
Курдль ©   (2004-05-06 13:04) [2]

Это нетривиальная задача.
Ведь чтобы занести новое поле нужно создать целую новую запись в таблице, откуда лукапится значение поля. Может Вам нужно не lookup-поле, а денормализованный inplace ComboBox?


 
Соловьев ©   (2004-05-06 13:09) [3]


> Курдль ©   (06.05.04 13:04) [2]

Да. Имхо, в ЕхЛибе это реализовано классно.


 
Михаил   (2004-05-06 13:11) [4]


> Курдль ©   (06.05.04 13:04) [2]

Что такое денормализованный inplace ComboBox?


 
Курдль ©   (2004-05-06 13:18) [5]


> Михаил   (06.05.04 13:11) [4]
> Что такое денормализованный inplace ComboBox?

Прежде, чем пускаться в утомительные разъяснения, нужно понять, а оно вам надо?
Если есть связь между таблицами по внешнему ключу (как обычно того требует lookup-поля), может быть Вам [2] и не пригодится.
Возможен ли такой вариант, что в таблице, откуда Вы брали значение для своего псевдо-lookup-поля, нет и не будет аналога, содержащегося в основной таблице?


 
Михаил   (2004-05-06 13:25) [6]

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


 
Курдль ©   (2004-05-06 13:32) [7]


> Нет, не возможно.

Тогда Ваше стремление вносить новую запись, отсутствующую во вспомогательной таблице методически неверно (разве что если в последней всего 2 поля, одно из которых ID).
Если проводить контекстную проверку - это метод. Причем он поддерживается многими inplace (нкаладными, что ли...) LookUp-компонентами. Не знаю, как в стандартном DBGrid или DBGridEh, но в TdxDBGrid есть режим, когда при вводе первого же символа в это поле начинается фильтрация списка по признаку совпадения этого симвлоа.


 
Михаил   (2004-05-06 13:39) [8]

Это не мое стремление, а человека, для которого программа пишется. :))) Спасибо за советы.



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

Текущий архив: 2004.05.30;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.024 c
1-1084878778
FireMan_Alexey
2004-05-18 15:12
2004.05.30
Активное приложение


7-1083135454
vitalyIshim
2004-04-28 10:57
2004.05.30
Температура процессора и скорость вращения куллера


6-1081419374
-=Demon=-
2004-04-08 14:16
2004.05.30
Контрольная Сумма


4-1080885334
Sapsi
2004-04-02 09:55
2004.05.30
Поиск edit и button в чужом окне


1-1084893183
Реактор
2004-05-18 19:13
2004.05.30
Как закрыть форму