Программное обеспечение

Как сделать подстановку счётчика из другой таблицы в зависимости от выбранного города в форме в Access 2013?

Известно, что названия городов России, изредка повторяются и единственное, что нам в таком случае может помочь отличить их - это регион.

Я подумал решить эту проблему выбора города в базе данных, где издана книга, выбором соответствующего уникального идентификатора (в таблице поле "Номер"), с дальнейшей целью подстановки в таблице в соответствующих полях вместо идентификатора уже выпадающего списка с городом и регионом. В самой таблице, хочу пояснить, встречается выпадающий список с подстановкой идентификатора (тип данных "Счётчик") города из другой таблицы. Но меня интересует, чтобы подставлялся соответствующий город и регион в форме, а не в таблице, как Вы уже поняли.

Для наглядности прикрепляю скриншоты.

В чём заключается вопрос? Как сделать при выборе Города и региона в Форме автоматическую подстановку его идентификатора в таблицу книги? Надеюсь, достаточно подробно и ясно разъяснил вопрос.
Олег Белоцкий
Олег Белоцкий
5 663
Тигран, здравствуйте!
Вы хотите, чтобы в форме "Книги" вместо кода "Место издательства" отображался Город и Регион из связанной таблицы в виде списка? И чтобы при выборе другого города обновлялся "Код" в соответствующей таблице?
Насколько я вижу, вы заранее создали отдельный запрос (возможно, проблема в том, что он оказался не связан с источником данных формы).
Это делать не обязательно, в Access 2013 есть "мастер" выпадающих списков, делающий именно то, что вы желаете. На вкладке "Конструктор" в режиме конструктора формы разверните "Элементы управления" и убедитесь, что нажата кнопка "Использовать мастера" (по умолчанию должна быть нажата).
Теперь выберите оттуда же элемент управления "Поле со списком" и перетащите на форму, запустится мастер (Первая картинка).
Дальше интуитивно понятно, источником будет "Города России", столбцы "Город" и "Регион".
Чтобы изменения сохранялись, не забудьте поменять опцию на "Сохранить в поле" и выберите "Место издательства".
На последнем шаге мастера укажите подпись к данным (лейбл на форме).
Вобщем-то на этом всё, список будет выпадать, форма менять значение Код в таблице книги.

PS Небольшое замечание: верная идея вынести список мест издательств в отдельную таблицу, но в таком виде, т. е. вместе с регионами, со временем может возникнуть проблема. Если городов будет очень много, то список будет очень большой. Кроме того, будут излишние данные в виде повторяющегося Региона. В этом случае Регионы лучше тоже вынести в отдельную таблицу, а выбор Города сделать, например, пошагово - сначала Регион, потом город. =)
Денис Брунер
Денис Брунер
511
Лучший ответ
Олег Белоцкий Вы супер! Я столько дней мучился над этой задачей, а Вы одним ответом все мои проблемы решили! Спасибо Вам огромное!
Не легче - ли делать тип данных такого формата числовым?
Олег Белоцкий А зачем, если нужен уникальный идентификатор? Не проставлять же для каждой строки вручную его?
Я без понятия я всего та 4 класс

Похожие вопросы