WEB форумы на jedi
[Форум] [Помощь] [Поиск] [Выйти]
Добро пожаловать, [info]User

WEB форумы на jedi [ПОИСК] [Архив до 03.2006]

Тема Delphi. ADO. DBGrid. Lookup... К предыдущему сообщению На следующее сообщение Программирование

Отправил SergOpelъ в 21:33 17.08.2004[Ответить]
Есть несколько таблиц.
связка:
ADOConnection->ADOQuery->DataSource->DBGrid
В DBGrid отображается ряд полей одной таблицы.
Необходимо редактирование данных.
Часть отображаемых полей является индексом для данных из других таблиц. Хочется чтобы отображались значения, а не индексы. Вопрос с редактированием разрешился путем run-time подстановки (подлога :) DBLookupComboBox в ячейку получающую фокус.
Осталась проблема с отображением неактивных данных (нужно визуально заменить индексы на значения). Гугл, Королевство Делфи уже третий час не сдают бастионы...
Посоветуйте путь решения или ссылку, пожалуйста.
Спасибо.


Отправил SergOpelъ в 23:15 17.08.2004[Ответить]
Гугл проиграл.
Оказывается:
При реализации Lookup с помощью, например, DBLookupComboBox параметры Lookup указываются в disign-time. Ну, по крайней мере, есть такая возможность :)).
Предположив, что, аналогично, есть lookup в связке ADOQuery-DBGrid, то он верно тоже может быть замечен в disign-time. Предположительно в свойствах столбцов DBGrid (все динамически создается-удаляется, визуально тестируется :). Фигушки. Отсутствие и сподвигло на битву с Гуглом.

Оказывается параметры Lookup указываются лишь в run-time. И не в DBGrid, а в ADOQuery.FindField('Name').Lookup....

Вот. Вдруг кому понадобится.
Сорьки что нафлудил. Не позволяй себе лениться :-/