|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
17.04.2015, 10:50 | #1 |
Пользователь
Регистрация: 10.04.2014
Сообщений: 16
|
как отобразить в одном DBComboBox соответствующие данные другого DBComboBox
Здравствуйте! Есть БД с 2-мя таблицами - Client и Oborudovanie, таблицы связаны полем IDClient (в таблице Client это первичный ключ, а в таблице Oborudovanie - это поле-вторичный ключ для связи с первой таблицей). На форме два DBComboBox. В первом DBComboBox выбираю имя клиента и как сделать так, чтобы во второй таблице отображалось только оборудование выбранного имени клиента, т.е. то оборудование, IDClient-вторичный ключ которого равен IDClient выбранного имени из первой таблицы?
|
17.04.2015, 11:32 | #2 | |
Участник клуба
Регистрация: 10.08.2010
Сообщений: 1,392
|
Цитата:
2) и втором Combo или DBCombo получите список "оборудование выбранного имени клиента" примеры про фильтр и про выборке много на форуме ..... Реализуйте
E_MAIL: rijgvina7@yahoo.com
|
|
17.04.2015, 13:09 | #3 | |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
Цитата:
Знаешь что это?
I'm learning to live...
|
|
18.04.2015, 22:03 | #4 |
Пользователь
Регистрация: 10.04.2014
Сообщений: 16
|
Не понятно, как заполнять поля DBLookupComboBox1 и DBLookupComboBox2. Есть 2 таблицы Client и Oborudovanie.
DBLookupComboBox1: ListSorce->DataSource1 (подключен к таблице Client через ADOQuery1) ListField->Name (имена клиентов в таблице Client) KeyField->IDClient (первичный ключ в таблице Client) DataSource->DataSource2(подключен ко второй таблице Oborudovanie через ADOQuery2) DataField->IDClientOborudov(вторичный ключ в таблице Oborudovanie) DBLookupComboBox2: ListSorce->пусто ListField->пусто KeyField->пусто DataSource->DataSource2(подключен ко второй таблице Oborudovanie через ADOQuery2) DataField->TypeOborudov(поле типа оборудования, которое должно соответствовать выбранному имени клиента). DBLookupComboBox1 выводит имена, а второй неактивен. Где ошибка? |
18.04.2015, 22:14 | #5 |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
Master-Detail настроен?
I'm learning to live...
|
18.04.2015, 22:16 | #6 |
Пользователь
Регистрация: 10.04.2014
Сообщений: 16
|
Не найду поле Master-Detail у DBLookupComboBox. Может, как-то по-другому называется в Delphi7?
|
18.04.2015, 22:46 | #7 |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
Это не поле, а связь. И она настраивается не у этого компонента, а у связанного с ним (Query, Table, DataSet).
http://docwiki.embarcadero.com/RADSt..._%28FireDAC%29 http://delphi.about.com/od/database/l/aa071001c.htm Вот еще полезно будет ознакомится : http://www.interface.ru/home.asp?artId=20957
I'm learning to live...
|
18.04.2015, 22:50 | #8 |
Пользователь
Регистрация: 10.04.2014
Сообщений: 16
|
Спасибо, попробую понять.
|
19.04.2015, 18:33 | #9 |
Пользователь
Регистрация: 10.04.2014
Сообщений: 16
|
К сожалению, пока не могу разобраться в Master-Detail. Если не сложно, объсяните пошагово - какие настройки где ставить в вышеупомянутых компонентах. все же на примере понять проще :-)
|
19.04.2015, 20:19 | #10 |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
По памяти пишу.
Допустим у тебя Table1 - Client, а Table2 - Oborudovanie. Тогда: DataSource1 и DBLookupComboBox1 связан с Table1 DataSource2 и DBLookupComboBox2 связан с Table2 1) Table2 .MasterSource := DataSource1 ; Table2 .MasterFields := 'IDClient '; 2) DBLookupComboBox1.ListSorce := DataSource1 DBLookupComboBox1.ListField:= Поле имя клиента DBLookupComboBox1.KeyField:= 'IDClient ' 3) DBLookupComboBox2.ListSorce := DataSource2 DBLookupComboBox1.ListField:= оборудование DBLookupComboBox1.KeyField:= 'IDОборудования' Опять таки второй комбик по идее вообще не нужен. Одного вполне должно хватить, если просто хочешь отобразить таблицу связанного оборудования с клиентом.
I'm learning to live...
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Как добавить список из столбца таблицы в DBComboBox.Items | Muramidaza | БД в Delphi | 0 | 03.03.2014 16:21 |
Как сохранить номер строки из DBCombobox в базу данных | Dedmoroz. | БД в Delphi | 2 | 28.03.2011 12:10 |
Как связать DBComboBox и DBGrid , чтобы... | Rin | БД в Delphi | 14 | 25.12.2009 18:21 |
Как сделать так чтобы dBCOMBOBOX...... | Gareevbo | Общие вопросы Delphi | 1 | 08.06.2009 19:59 |