Мастер подстановок
Чтобы создать подстановку для поля таблицы, проще всего использовать соответствующий мастер. Для этого нужно выбрать в качестве типа данных поля значение: Мастер подстановок. Опишем работу мастера на примере создания подстановки для поля Код студента в таблице Сессия.
Рис. 2.3. Столбец подстановки
1. На первом шаге мастер предлагает указать источник данных для столбца подстановки:
значения из таблицы или запроса;
фиксированный список значений.
По умолчанию используется первый пункт. Поэтому, так как мы собираемся использовать в качестве источника данных таблицу Студенты, нужно просто активировать кнопку Далее.
2. Мастер просит указать таблицу или запрос, содержащие столбец подстановки. В списке таблиц нужно выбрать таблицу Студенты и активировать кнопку Далее.
3. Затем нужно двойным щелчком мыши отобрать поля, используемые в подстановке: Код студента, Фамилия и Имя. Последнее поле добавлено, чтобы иметь возможность различать студентов- однофамильцев.
4. Так как Код студента — ключевое поле, то Access автоматически выбирает его в качестве источника данных (присоединенного столбца) для поля подстановки. На этом шаге можно изменить ширину полей, используемых в подстановке, и указать, надо ли скрыть присоединенный столбец. Оставим без изменения установку по умолчанию: Скрыть ключевой столбец.
5. На последнем шаге зададим подпись для столбца подстановки Студент и нажмем кнопку Готово. Access попросит сохранить таблицу, и операция создания подстановки завершена.
Для просмотра полученных результатов перейдем в режим таблицы, щелкнув по кнопке Вид на панели инструментов. В первом столбце Студент вместо кодов студентов появятся их фамилии. Перейдем на последнюю, пустую запись таблицы, щелкнем по ячейке в поле Студент, а затем по появившейся справа кнопке. Откроется список, содержащий фамилии и имена студентов (рис. 2.3). Если выбрать щелчком мыши одного из студентов, то в ячейке появится его фамилия, а в таблицу Сессия будет занесен его код.
В качестве источника данных для столбца подстановки может использоваться фиксированный список значений. Например, можно создать столбец подстановки для поля Оценка, указав на первом шаге работы мастера, что значения берутся не из таблицы, а из списка. Затем следует создать список, содержащий перечень возможных оценок: 2, 3, 4 и 5. После завершения создания столбца подстановки значения в поле Оценка можно будет не вводить с клавиатуры, а выбирать из списка. Чтобы изменить свойства поля подстановки, созданного с помощью мастера, нужно щелкнуть по ярлычку Подстановка. На рис. 2.4 видны свойства поля Код Студента. Ниже дается их краткое описание:
Тип элемента управления — задается представление этого поля в форме.
Тип источника строк — указывается тип источника данных для поля. Им может быть таблица/запрос (по умолчанию) или список значений.
Источник строк — определяет источник данных. Если тип источника строк — таблица/запрос, то здесь указывается имя таблицы/запроса или инструкция SQL. Если тип источника строк — список значений, то указывается список элементов, разделяемых точкой с запятой.
Присоединенный столбец — указывается номер столбца, значения из которого заносятся в поле.
Число столбцов — задает число выводящихся столбцов.
Заглавия столбцов — выводятся (Да) или нет (Нет) в качестве заголовков столбцов имена полей или первые элементы списка значений.
Ширина столбцов — задается ширина выводимых столбцов (через точку с запятой). Чтобы скрыть столбец, нужно установить его ширину, равной 0.
Число строк списка — задает максимальное число строк, выводящихся в раскрывающемся списке.
Ширина списка — задает ширину раскрывающегося списка.
Ограничиться списком — указывает, что в поле вводятся только значения, принадлежащие списку (Да), или разрешен ввод любых других значений (Нет). Access разрешит вводить в поле значения, не принадлежащие списку, лишь в том случае, если присоединенный столбец является первым отображаемым столбцом в списке.
Искусство создания базы данных в Microsoft Office Access 2007
Столбец подстановок – это поле, значения которого выбираются из списка. Этот список может быть формирован вручную, взят из другой таблицы или запроса. Столбец подстановок можно создать различными способами. Наиболее простой из них – с помощью Мастера подстановок.
В Режиме таблицы вызвать Мастер подстановок можно следующим образом.
1. Открыть таблицу, в которой нужно создать столбец подстановок. Перейти на вкладку Режим таблицы.
2. В таблице выделить поле, которое будет столбцом подстановок.
3. В группе Поля и столбцы щелкнуть команду Столбец подстановок. Запуститься Мастер подстановок и откроется диалоговое окно Создание подстановки.
Вызвать Мастер подстановок можно также в Конструкторе таблиц. Для этого достаточно проделать следующие шаги.
1. Открыть таблицу, в которой нужно создать столбец подстановок
2. В бланке Конструктора таблиц перейти на строку, соответствующую полю, которое должно стать столбцом подстановок.
3. В столбце Тип данных в раскрывающемся списке выбрать Мастер подстановок. Запуститься Мастер подстановок и откроется окно Создание подстановки.
Чтобы организовать фиксированный список значений, следует выполнить действия.
1. В окне Создание подстановки выбрать Будет введен фиксированный набор значений. Щелкнуть кнопку Далее.
2. Указать число столбцов списка. Ввести значения в ячейки списка. Щелкнуть кнопку Далее.
3. Задать подпись, которую должен иметь столбец подстановок.
4. Снять флажок в свойстве Разрешить несколько значений. Щелкнуть кнопку Готово.
Для создания столбца подстановок в виде списка значений из таблицы или запроса нужно осуществить надлежащие шаги.
1. В окне Создание подстановки выбрать Объект «столбец постановки» будет использовать значения из таблицы или запроса. Щелкнуть кнопку Далее.
2. Указать таблицу или запрос со значениями, необходимыми для подстановки. Щелкнуть кнопку Далее.
3. Отобрать поля для подстановки. Щелкнуть кнопку Далее.
4. Определить порядок сортировки значений в подстановке. Щелкнуть кнопку Далее.
5. Если на шаге 3 было выбрано несколько полей, то снять флажок Скрыть ключевой столбец. В этом случае будут отображаться все столбцы подстановки. Щелкнуть кнопку Далее.
6. Если на шаге 3 было выбрано несколько полей, то требуется указать поле, значение которого будет записываться в таблицу, в которой формируется подстановка. Щелкнуть кнопку Далее.
7. Задать подпись, которую должен иметь столбец подстановок.
8. Снять флажок в свойстве Разрешить несколько значений. Щелкнуть кнопку Готово.
Столбец подстановок будет создан. Свойства подстановки можно просмотреть и изменить в бланке конструктора, открыв вкладку Подстановка в области Свойства поля. Здесь целесообразно свойство Разрешить изменение списка значений установить в состояние Да. Это позволит добавлять в список новые значения. Можно разрешить в поле вводить значения, которых нет в списке, не изменяя при этом сам список. Для цели свойству Ограничиться списком надо присвоить значение Нет.
☞ Примечание. В Access допускается формирование столбца подстановок, разрешающего выбор из списка сразу несколько значений. Достаточно при создании столбца подстановок при помощи мастера установить флажок в свойстве Разрешить несколько значений.
Список подстановки
Пришло время наполнить таблицу Список конкретной информацией. Для этого выполните следующие шаги.
1. В окне базы данных откройте список таблиц и дважды щелкните на значке Список. Выбранная таблица откроется в режиме просмотра данных.
2. Добавьте несколько записей в соответствии с рис. 16.7.
Рис. 16.7. Список состоявшихся контактов
Примечание Чтобы расширить столбец Описание, содержащий длинные текстовые строки, поместите указатель мыши на его правую границу и, когда значок сменится на двунаправленную стрелку, перетащите границу вправо.
Не забывайте, что числа в столбце Код_Контакты должны соответствовать номерам записей таблицы Контакты, описывающих людей, с которыми вы контактировали. Согласитесь, что искать соответствующие номера очень неудобно. Access позволяет автоматизировать эту операцию с помощью списка подстановки, который настраивается следующим образом.
3. Щелкните на кнопке Вид панели инструментов. Откроется окно конструктора таблицы.
4. В списке типа данных для поля Код_Контакты выберите пункт Мастер подстановок.
5. В первом окне мастера оставьте выбранным положение переключателя Объект «столбец подстановки» будет использовать значения из таблицы или запроса и щелкните на кнопке Далее. Три положения переключателя второго окна мастера выводят на экран список таблиц, запросов или объединяют эти два списка. Здесь нужно выбрать таблицу или запрос на роль источника подстановки. В нашем случае база данных кроме таблицы Список содержит только один объект — таблицу Контакты, которая и окажется выбранной в окне мастера.
6. Щелкните на кнопке Далее. Третье окно мастера, показанное на рис. 16.8, предлагает выбрать из таблицы Контакты поля, участвующие в подстановке. Этот список обязан содержать то поле, значения которого должны помещаться в поле Код_Контакты, то есть одноименное поле таблицы Контакты.
7. Щелкните на пункте Код_Контакты.
Рис. 16.8. Мастер подстановок
Рис. 16.9. Параметры подстановки
8. Щелкните на кнопке со стрелкой вправо. В список источника подстановки следует также добавить те поля, содержимое которых должно отображаться вместо численного значения, помещаемого из поля Код_Контакты таблицы Контакты в поле Код_Контакты таблицы Список. Будет удобно выбирать людей по их именам и фамилиям.
9. Добавьте в список Выбранные поля пункты Фамилия и Имя.
10. Затем щелкните на кнопке Далее.
11. В следующем окне мастер продемонстрирует два столбца таблицы-источника, скрыв столбец Код_Контакты, содержащий идентификатор записи. Щелкните на кнопке Далее.
12. В поле последнего столбца введите название Контакт, которое заменит имя столбца Код_Контакты, и щелкните на кнопке Готово.
13. В появившемся окне диалога щелчком на кнопке Да подтвердите необходимость сохранения построенной структуры.
Примечание Параметры списка подстановки появятся на вкладке Подстановка, показанной на рис. 16.9. Если вы знакомы с языком структурированных запросов SQL, то сможете разобраться в запросе Источник строк, который формирует таблицу подстановки.
14. Щелкните на кнопке Вид, чтобы снова переключиться в режим ввода данных. Теперь в третьем столбце таблицы вместо чисел видны фамилии, соответствующие этим числам, хотя само значение поля Код_Контакты не изменилось. Access автоматически ищет соответствующую запись таблицы Контакты по числу, содержащемуся в поле Код_Контакты, и выводит в ячейку текст поля Фамилия — второго поля таблицы Контакты из выбранных в окне мастера подстановки. Давайте попробуем добавить в таблицу Список еще одну запись.
Рис. 16.10. Список подстановки
15. Щелкните на нижней ячейке столбца Дата и введите дату 10.10.97.
16. Нажмите клавишу Tab и напечатайте текст Письмо с предложениями о сотрудничестве.
17. Снова нажмите клавишу Tab и щелкните на появившейся кнопке раскрывающегося списка, как показано на рис. 16.10. Теперь вы можете выбирать людей из списка подстановки, сформированного на базе полей Фамилия и Имя таблицы Контакты.
18. Щелкните на втором пункте списка.
Access автоматически отыщет в таблице Контакты значение поля Код_Контакты для записи, содержащей информацию о Петре Петрове, и введет найденное число в поле Код_Контакты таблицы Список. Это значение останется скрытым. Вместо него в ячейке таблицы Список появится соответствующая фамилия, взятая из таблицы Контакты.
Подстановка данных в форму Access
Здравствуйте. В прошлый раз писал сюда и так хорошо помогли, сейчас вот новая головоломка над решением которой думаю уже не первый день и похоже, что этот сайт — последняя инстанция.
Я делаю БД в MS Access, где имею 3 таблицы:
Передачи(Код передачи, Название, Рейтинг, Стоимость минуты) Реклама(Код рекламы, Код передачи, Код заказчика, Дата, Длительность в минутах) Заказчики(Код заказчика, Название, Банковские реквизиты, Телефон, Контактное лицо)
Ясное дело, что дубли полей с кодами служат для удобства при создании смежных таблиц или запросов. Я наделал кнопочных форм, где отображены поля для добавления информации в эти самые таблицы. Но вот когда дело дошло до добавления рекламы, появилась маленькая неувязочка. Первые 2 поля как бы для ввода чисел, но писать туда(Коды заказчика и передачи) числа в ручную очень не удобно, ведь мало кто их будет помнить. Я пришёл к выводу о создании поля с подстановкой, но и там получилось что можно или вывести список с кодами заказчиков и передач (Что тоже не удобно, ибо не понятно какой код к какой передаче относится). Максимально удобным вариантом было бы: Создать на месте поля ввода список, в котором можно выбрать передачу (Из списка названий) или заказчика (Из списка фирм), а чтобы в таблицу Рекламы записался код выбранного элемента. Сам я с Access работаю второй раз в жизни. До этого часто работал с тандемом Php & MySQL, где такое дело делалось при помощи хтмл форм и отправляло в массив $_POST уже ключи от записей из списка. Наверняка и в Access есть что-то похожее, поэтому, я и обращаюсь к знатокам и гуру 🙂 Если что, то у меня есть немного денег на WM и могу поблагодарить не только от всего сердца.