|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
23.05.2008, 11:27 | #1 |
Пользователь
Регистрация: 20.04.2008
Сообщений: 57
|
Грмотная настройка фильтра в компоненте Table
Помогите разобраться с такой вещью. Вот есть две таблицы: стран и городов. В таблице городов как форейгн кей идет код страны. Сделал на форме два компонента DBLookupCombobox, для каждой таблицы. Нужно чтобы при выборе какой то одной страны в одном DBLookupCombobox, в другом были доступны города соответствующие только выбраной стране! Те надо в компоненте Table соответствующего городам отфильтровать города, форейгн кей которых равен коду выбраной страны. Я так предполагаю при выборе из списка у нас в свойство DBLookupCombobox.ListFieldIndex закладывается номер выбраного поля из выпадающего списка. Кажется начинаются они с 0, а вот коды стран с 1 (несоответствие).. Как выкрутиться, как настроить фильтр. Заранее благодарен!
|
23.05.2008, 12:35 | #2 |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
А может лучше вторую сделать подчиненной а первую главной?
Master-Details имею ввиду?
I'm learning to live...
|
23.05.2008, 12:53 | #3 |
Пользователь
Регистрация: 20.04.2008
Сообщений: 57
|
Хотелось бы заставить работать в таком варианте. Может тогда при помощи Query запросом отфильтровать? опять же тогда вопрос как результаты фильтрации записхать в DBLookupCombobox? Далее еще предполагается после фильтрации городов, при дальнейшем выборе города, фильтровались улицы принадлежащие только этому городу...
|
23.05.2008, 13:24 | #4 |
Форумчанин
Регистрация: 31.10.2007
Сообщений: 103
|
Я так понял через BDE работаешь.
В ADO просто устанавливаешь фильтр на таблицу, т.е. ADOTable1-DataSourse1-DBLookUpCombobox1 Страна ADOTable2-DataSourse2-DBLookUpCombobox2 Город У DBLookUpCombobox1 на событие CloseUp пишешь. Код:
Последний раз редактировалось AlexandrSid; 23.05.2008 в 13:26. |
23.05.2008, 14:20 | #5 |
Пользователь
Регистрация: 20.04.2008
Сообщений: 57
|
Поясните пожалуйста строку ADOTable2.Filter:='IDStrana='+ADOTa ble1.FieldByName('ID').AsString;
что предполагает собой например IDStrana и FieldByName('ID') (непонятно что за ID) в моей таблице стран поля называются: strany_cod(PK); strany_naimen. в таблице городов поля: gorod_cod(PF), gorod_naimen, gorod_kstrany(FK) |
23.05.2008, 15:02 | #6 | |
Форумчанин
Регистрация: 31.10.2007
Сообщений: 103
|
Цитата:
ADOTable1.FieldByName('ID') код страны в табице страны (PK) IDStrana код страны в таблице города (FK) Т.е. для твоих таблиц будет Код:
Последний раз редактировалось AlexandrSid; 23.05.2008 в 15:08. |
|
23.05.2008, 15:32 | #7 |
Пользователь
Регистрация: 20.04.2008
Сообщений: 57
|
первый комбобокс со странами дает выбрать страну, но при закрытии вылетает ошибка "Operation not applicable" Может это потому что я использую просто Table, а не ADOTable. Я с базой (Oracle) соединяюсь посредством ODBC
|
23.05.2008, 15:36 | #8 |
Форумчанин
Регистрация: 31.10.2007
Сообщений: 103
|
Покажи код
|
23.05.2008, 15:40 | #9 |
Пользователь
Регистрация: 20.04.2008
Сообщений: 57
|
Возможно мой косяк где то... сейчас еще перепроверю
Код:
Последний раз редактировалось Avalonix; 23.05.2008 в 15:52. |
23.05.2008, 16:09 | #10 |
Форумчанин
Регистрация: 31.10.2007
Сообщений: 103
|
Сейчас попробую с TTable може что подскажу.
Попробуй сделать тоже самое через ADOTabel Последний раз редактировалось AlexandrSid; 23.05.2008 в 16:12. |
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Настройка .htaccess | Mikola | PHP | 3 | 07.03.2009 22:21 |
Опции фильтра в ADOTable | alain | БД в Delphi | 0 | 02.05.2008 22:17 |
настройка TCP/IP | Sergey2008 | Свободное общение | 0 | 19.02.2008 19:09 |
Настройка интернета. | Marsik | Помощь студентам | 3 | 02.01.2008 09:16 |
Настройка паскаля | Snake_ua | Паскаль, Turbo Pascal, PascalABC.NET | 7 | 18.10.2007 17:56 |