![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Как работать с Lookup? ПОМОЖИТЕ!!! [D6, MSSQL]
gizar © (2003-05-12 13:36:00)Пробовал через инспектор объектов что то результат не правильный, пустая колонка значений, что не так подскажите:
1) создал ADOTable1, ADOTable2, DataSource1, DBGrid1
2) 2 таблицы в базе данных MSSQL7.0 :первая (table1)состоит из одного поля Id_name, которое содержит ключи (каждая запись содердит число типа интегер), а вторая (table2)- справочник , т.е. для каждого ключа Id имеется поле Name т.е. как данный ключ называется.
3) Задача состоит в том, что ADOTable1 отображая первую таблицу показывала поле Name т.е. их названия.
4)Как делал:
DBGrid1.DataSource - DataSource1;
DataSource1.DataSet - AdoTable1;
ADOTable2.TableName - table2;
ADOTable1.TableName - table1;
Жмем два раза на объекте ADOTable1 появляется окно редактора полей данного объекта, жмем правую клавишу добавляем поле.
В появившемся окне выбираем поле Id_name и добавляем его.
В окне редактора полей выбираем появившееся поле Id_name, далее в его свойствах указываем:
FieldKind - fkLookup
KeyFields - Id_name
LookupDataSet - table2
LookupKeyFields - id
LookupResultFields - Name
5) ну и типа в конце концов ADOTable1 и 2.Active:= true
и вот результат получается в DBGrid1 одна колонка с именем id_name - с пустыми строками....(((
Люди ПОМОЖИТЕ - что не так.... задолбался?
Заранее благодарен
Johnmen (2003-05-15 14:36:00) [1]Разобрался ?! Ну вот видишь, ничего сложного...
>Ну тип то, ясное дело, string. :)
Ясное дело, что тот же, что и тип просматриваемого в списке поля...:)
gizar (2003-05-15 14:32:00) [2]Надо было добавить все поля,
добавить новое поле,
и затем в свойствах нового поля укащзать KeyField - Id_name
ну и все остальное правильно...
Johnmen (2003-05-15 14:32:00) [3]Обзови, как хочешь, хоть MySuperLookupField.
Ну тип то, ясное дело, string. :)
gizar (2003-05-15 14:31:00) [4]УРА...добил.... ОГРОМНОЕ СПАСИБО
gizar (2003-05-15 14:27:00) [5]А новое поле как обозватьи какой тип данных ей указывать?
gizar (2003-05-15 14:19:00) [6]Пробую....
Johnmen (2003-05-15 14:13:00) [7]А надо - New Field...:)
gizar (2003-05-15 14:02:00) [8]В редакторе полей выделяю мышкой Id_name и потом в свойствах указываю:
FieldKind - fkLookup
KeyFields - Id_name
LookupDataSet - ADOTable2
LookupKeyFields - id
LookupResultFields - Name
Соловьев (2003-05-15 12:46:00) [9]как создаешь лукап поле?
gizar (2003-05-15 12:43:00) [10]Теперь стала писать
Lookup information for field "Id_name" incomplete
Соловьев (2003-05-15 12:40:00) [11]
> я использую только lookup
тогда у тебя ничего не выйдет.
добавить надо поля которые тебе нужны, и те которые участвуют в выборке
gizar (2003-05-15 12:29:00) [12]
> все поля присутствуют? или только лукап?
я использую только lookup
> там Ctrl+N и появится окошко со свойствами, ты там эти параметры
> выставляешь?
> тип поля выбираешь?
нет я правой клавишей жму и выбираю - добавить поля (т.е. CTRL-A)
Соловьев (2003-05-15 10:32:00) [13]
> Жмем два раза на объекте ADOTable1 появляется окно редактора
> полей данного объекта, жмем правую клавишу добавляем поле.
> В появившемся окне выбираем поле Id_name и добавляем его.
все поля присутствуют? или только лукап?
> далее в его свойствах указываем:
там Ctrl+N и появится окошко со свойствами, ты там эти параметры выставляешь?
тип поля выбираешь?
gizar (2003-05-15 10:25:00) [14]
> точно ключи совпадают?
Да. Я просто обошел это используя дополнительное поле и программно вставляю ключи. Но ведь это не дело....(((
Соловьев (2003-05-15 09:44:00) [15]
> Кстати....а вот если поле будет Lookup, то знначение в него
> какое будет вставлятся при редактировании, id или name?
> LookupResultFields - Name
точно ключи совпадают?
gizar (2003-05-15 07:02:00) [16]Что ....никто не знает?
gizar (2003-05-13 15:18:00) [17]Кстати....а вот если поле будет Lookup, то знначение в него какое будет вставлятся при редактировании, id или name?
Ну если все заработает))
gizar (2003-05-13 15:16:00) [18]
> Вроде все правильно. Попробуй вывести два поля типа data
> и типа
> lookup. И кстати проверь тоже самое, но например через BDE
> Возможно не соответствуют ключи
Не совсем понял? a data что за поле будет?
gizar (2003-05-13 15:14:00) [19]Да таблица table2 активна
sunrider (2003-05-13 00:05:00) [20]Вроде все правильно. Попробуй вывести два поля типа data и типа
lookup. И кстати проверь тоже самое, но например через BDE
Возможно не соответствуют ключи