Вниз
Скачать: 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 вся ветка

Скачать: CL | DM;



Память: 0.48 MB
Время: 0.021 c
1-1090242041
flash
2004-07-19 17:00
2004.08.01
Как напрямую вызвать метод суперкласса из потомка >2-го уровня


8-1084527750
NickKBR
2004-05-14 13:42
2004.08.01
Создание видео файла без использования DirectX, OpenGL и т.п.


4-1087802260
Magikan
2004-06-21 11:17
2004.08.01
своя клиентская область


6-1086238856
NorthMan
2004-06-03 09:00
2004.08.01
idTCPClient


9-1082097325
Darthman
2004-04-16 10:35
2004.08.01
2D 3D opensource OpenGL engine. Может быть кому пригодится.




   Наверх