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

Вниз

EhLib - выпадающий список в гриде.   Найти похожие ветки 

 
Serge_   (2004-07-20 14:20) [0]

Народ, я знаю, что многие полюзуются библиотечкой EhLib - посему вопрос, как организовать выпадающие списочки (и даже гриды, как в примере)?
Интересуетс сполоб именно с помощью LookupSource, а не через PickList. Дело в том, что в демо-примере это делается с успехом, но посторить сей успех я никак не смог.
Спасибо.


 
Iconka ©   (2004-07-20 14:29) [1]

Точно не помню, но помоему нужно само поле в TTable сконфигурить как Lookup. В таблице для колонки заполни поле LookupDisply. Может еще чего... не помню. Я тоже до этого дошла методом проб.


 
HSolo ©   (2004-07-20 15:14) [2]

Создайте в своем датасете lookup-поле, его и показывайте в гриде
Подробности - F1 + lookup fields


 
Serge_   (2004-07-20 16:32) [3]

По поводу того, что создать надо в датаСете лукап поле эт я понял. токмо вот не получается скомпоновать.
В настройке лукап поля учавствует четыре проперти KeyFields,
LookupKeyFields, LookupResultField, LookupDataSet. Кручу верчу ими и никак не могу подобрать.
Вот, к примеру, ксть у меня табличка tParent(parent_id, parent_name) и табличка tChild(child_id, child_name, parent_id).
Хочу в гриде показывать табличку tChild таким образом, чтоб на месте поля parent_id видеть список родителей, но идентификаторы подставлялись бы автоматически.
Каковы должны быть значения указанных выше пропертей, чтоб лукап поле было сконфигурено правильно?


 
HSolo ©   (2004-07-20 17:16) [4]

KeyFields - (tParent)parent_id
LookupKeyFields - (tChild)parent_id
LookupResultField - (tChild)child_name
LookupDataSet - tChild

Неужели этого нет в справке к D7? Или языковой барьер? :)


 
Serge_   (2004-07-20 18:22) [5]

Да в том-то и дело, что есть.
И именно так я и делал.
А не работает. :(


 
HSolo ©   (2004-07-20 18:30) [6]

Быть того не может :)
Как создаете lookup-поле? В гриде показываете именно его (а не поле с идентификаторами)? СУБД какая? Компоненты доступа?


 
Serge_   (2004-07-20 18:48) [7]

СУБД = MS SQL Server
Компоненты доступа = АДО
Лукап поле создаю как и следует - допустим есть qChild:TADOQuery;

В нём добавляю поле parent_name_1 с типом fkLookup.
Выставляю всё как Вы сказали в посте 4.
В гриде это поле показываю - и ничего не происходит. Грид не продупляется, что поле это лукаповое. :(

Хотя стоп... По Вашему посту 4 выходит, что лукаповое поле почему-то создаётся в датаСете tParent и пропертя LookupDataSet = tChild и соответсвенно LookupResultField = (tChild)child_name. Мне надобно, чтобы выпадал список родителей и в гриде, я выбирал родителя ребёнку, а значит лукаповое поле должно создаваться в датаСете tChild и соответсвенно LookupDataSet = tParent и соответсвенно LookupResultField - (tParent)parent_name.
Я так понимаю Вы ошиблись или я что-то не понял и это может стать ключом к разгадке?


 
HSolo ©   (2004-07-21 09:53) [8]

sorry, под конец дня меня переклинивает :(
Вам нужно отобразить tChild, а значения для lookup-а взять из tParent, так?
Тогда создаем lookup-поле в tChild и:
KeyFields - (tChild)parent_id
LookupKeyFields - (tParent)parent_id
LookupResultField - (tParent)parent_name
LookupDataSet - tParent


 
Serge_   (2004-07-21 10:40) [9]

Ну да - так вот такая штуковина не пашет :(


 
HSolo ©   (2004-07-21 11:15) [10]

Т.е. не выводятся названия из LookupDataSet?
Странно... Правда, с ADO мне работать не доводилось, но с BDE/IBX/FIBPlus это работает как часы. Похоже, это какой-то ADO-шный нюанс, и тут я ничем помочь не могу :( Разве что попробуйте (шаманство, конечно) глянуть в сторону TField.LookupCache.


 
HSolo ©   (2004-07-21 11:16) [11]

Вдогонку - попробуйте задать этот вопрос в "Базах", там много спецов по ADO


 
Serge_   (2004-07-21 17:40) [12]

Спасибо большое.
Буду копать :)



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

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

Наверх




Память: 0.49 MB
Время: 0.049 c
11-1074852651
Владимир Кладов
2004-01-23 13:10
2004.08.01
Версия 1.91


14-1089404509
KilkennyCat
2004-07-10 00:21
2004.08.01
Сложность найма сотрудника.


3-1089105928
AlexanderSK
2004-07-06 13:25
2004.08.01
Удаление прав?


6-1085994971
half_litre
2004-05-31 13:16
2004.08.01
Алгоритм обмена данными ?


1-1089890578
_Dragon
2004-07-15 15:22
2004.08.01
Проблема с Listbox в runtime