|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
04.10.2012, 19:55 | #1 |
Пользователь
Регистрация: 03.10.2012
Сообщений: 32
|
Подчиненные списки
Здравствуйте!
Обращаюсь к профессионалам, так как у самого нет глубокого опыта работы с Access и Visual Basic. Есть база с информацией о сети. Главная таблица – «Активка» - содержит поля «Имя устройства», «VLAN», «IP-подсети» , «IP-адрес». Для всех полей, кроме «Имя устройства», есть соответствующие таблицы с данными. Хотелось бы сделать иерархические списки (если не ошибаюсь, так называется). При выборе значения VLAN в списке «IP-подсеть» оставались значения, которые относятся только к этому значению VLAN’a. И далее, исходя из значения в поле «IP-подсеть», в списке «IP-адрес» оставались значения, соответствующие IP-подсети. Если возможно, реализовать не через форму, а через таблицу. И пару слов, как это было сделано, чтобы понять, что и куда писать. Пробовал делать по аналогиям, найденным в сети, но результата не получил. Макет базы приложил. Заранее спасибо! |
05.10.2012, 00:17 | #2 |
Форумчанин
Регистрация: 01.04.2011
Сообщений: 226
|
Для начала, Вы напутали с типом полей, например в таблице VLAN поле Код VLAN числовой, а в таблице IP-подсети - текстовый. А должен быть тоже числовой, ведь связывание этих таблиц будет происходить именно по этому полю.
Для реализации Вашей задумки в таблице (без использования формы) попробуйте использовать подстановку (конструктор таблиц, параметры поля, закладка Подстановка) см. рис.
Если руки золотые, то не важно, откуда они растут.
|
09.10.2012, 22:23 | #3 |
Пользователь
Регистрация: 03.10.2012
Сообщений: 32
|
Спасибо, исправляю ошибки! ,)
|
12.10.2012, 00:03 | #4 |
Пользователь
Регистрация: 03.10.2012
Сообщений: 32
|
Подправил кое-что. Сделал базу с другими, чтобы понятнее было, о чем речь.
Фильтрация происходит, но есть вопросы: 1) Почему-то не происходит обновления подчиненного списка. Только если нажать кнопку "Обновить". 2) В какой-то момент времени форма перескакиевает на первую запись в таблице и начинает перезаписывать записи. 3) Вместо названия Отдела в итоговую таблицу заносится его код. Не могу понять, почему... Будьте так добры, подскажите, что не так... |
12.10.2012, 09:06 | #5 |
Форумчанин
Регистрация: 01.04.2011
Сообщений: 226
|
Все-таки Вы не прислушались к предыдущей рекомендации: не следует хранить в таблице "Сотрудники" названия отделов и должностей, достаточно хранить их коды.
1. Для того, чтобы изменился список должностей после выбора отдела, необходимо выполнить запрос1, который фильтрует должности по выбранному отделу. Для этого надо добавить обработку события AfterUpdate для поля отдела. Код:
3. Так и должно быть. Согласитесь, что нет смысла хранить название отдела в двух таблицах (избыточность данных). Тем более, что описание отдела может содержать гораздо больше информации, нежели просто название (номер комнаты, телефон). Кроме того, если организационная структура предприятия подразумевает наличие филиалов со сходной структурой, то и названия отделов будут повторяться. Если Вам потребуется вывести, например, списочный состав организации с отображением отделов и должностей, то используйте запрос. На будущее не ленитесь присваивать элементам формы понятные названия: ПолеСоСписком0 - это ни о чем, а вот cbOtdel или cbDept говорит и о назначении поля (отдел) и о типе элемента (cb = ComboBox = ПолеСоСписком)
Если руки золотые, то не важно, откуда они растут.
|
12.10.2012, 18:36 | #6 |
Пользователь
Регистрация: 03.10.2012
Сообщений: 32
|
Спасибо за ответ!
Все поправил, как вы сказали. Вставил код обработки события, но автоматичское обновление все равно не происходит... В первый раз, при открытии формы все ок, а дальше - отказывается работать... |
12.10.2012, 22:32 | #7 |
Форумчанин
Регистрация: 09.06.2011
Сообщений: 388
|
Доброго. У вас обновление содержимого выпадающего списка происходит, но его значение вы не меняете ...
на неконкретные вопросы даю неконкретные ответы ...
|
13.10.2012, 00:23 | #8 |
Пользователь
Регистрация: 03.10.2012
Сообщений: 32
|
Простите, можно немного поподробнее!..
|
13.10.2012, 00:38 | #9 |
Форумчанин
Регистрация: 09.06.2011
Сообщений: 388
|
Код:
на неконкретные вопросы даю неконкретные ответы ...
|
14.10.2012, 16:24 | #10 |
Пользователь
Регистрация: 03.10.2012
Сообщений: 32
|
Простите, но я видимо чего-то не понимаю...
Сделал все, как Вы говорили, но обновление подчиненного списка все равно не происходит. Я просмотрел ту базу, которую Вы приложили в сообщении и заметил, что там та же самая проблема... Может я что-то не так делаю?.. Объясните, пожалуйста!.. |
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Подчиненные формы, связь. | Angelo4ka | Microsoft Office Access | 0 | 19.07.2012 16:30 |
разнести подчиненные формы по вкладкам | access user | Microsoft Office Access | 1 | 17.07.2011 18:02 |
Списки в Си. | Multiman | Помощь студентам | 3 | 03.06.2011 18:26 |
mdb+ADO главная и подчиненные таблцы | masal77 | БД в Delphi | 2 | 03.04.2011 09:34 |