![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Lookup [D6, dBase, FoxPro]
skiph © (2002-09-19 05:35:00)Существует 2 таблицы: одна основная, вторая - справочник. В справочнике находятся: 1.1) код записи, 1.2) строка, расшифровывающая суть записи, 1.3) дополнительная информация. Связь с основной таблицей осуществляется только по коду записи (внешний ключ) Опишем структуру основной таблицы как: 2.1)Основные данные, 2.2) внешний ллюч, по которому основная таблица связывается со справочником.
База небольшая, поэтому просмотр осуществляется через DBGrid (просматривается, естесственно только основная таблица).
Поскольку пользователю внешний ключ (2.2) ни о чем не говорит, я добавляю в основной Table Lookup-поле, извлекающее по внешнему ключу из справочника соответствующую строку (1.2). И таким образом в DBGridе отображается основная информация (2.1) и строка (1.2).
Проблема возникнет, когда пользователь попытается редактировать запись в основной таблице, а именно взять другое значение из справочника. Он нажимает на нужное поле - выпадает список всех значений из справочника, но замены на нужное не происходит, поскольку внешний ключ (2.2) остается прежним. Может кто подскажет, как мне выйти из данной ситуации?
Johnmen (2002-09-19 09:44:00) [1]Неверно заданы параметры лукапного поля, скорее всего...
ЮЮ (2002-09-19 08:04:00) [2]>но замены на нужное не происходит, поскольку внешний ключ (2.2) остается прежним.
Странно, т.к. именно для этого и служат Lookup-поля.
skiph (2002-09-19 05:37:00) [3]Или что-нибудь другое предложит...