Как добавить новую запись в подчиненную форму
Как я могу сделать так, чтобы подчиненная форма выдавала мне новую строку для ввода данных с помощью кнопки в основной форме?
РЕДАКТИРОВАТЬ: Не уверен, имеет ли это значение, но таблица, которую моя подчиненная форма должна обновлять, является связанной таблицей с SQL Server.
задан 22 июля ’11, 18:07
4 ответы
Сначала убедитесь, что ваш источник записей обновляется, открыв таблицу или запрос, на котором основан ваш источник записей подчиненной формы, и убедитесь, что вы можете редактировать и добавлять новые записи. В противном случае возможно, что в вашей связанной таблице SQL Server отсутствует уникальный идентификатор. Чтобы создать ее, просто удалите связанную таблицу и заново свяжите ее. При повторном связывании MS Access должен предложить вам указать уникальный индекс (может занимать более одного поля, чтобы сделать его действительно уникальным). Затем попробуйте еще раз.
Создан 27 июля ’11, 23:07
-Ты понял! В моей таблице SQL есть первичный ключ, и я могу редактировать таблицу из Access, но источником данных моей подчиненной формы был запрос, который не включал первичный ключ. Я добавил этот ключ, и теперь все работает! Ты мужчина! — MAW74656
Если таблица данных подчиненной формы является редактируемой и с включенным AllowAdditions, она уже должна дать вам кнопку *, чтобы добавить новую строку.
Если это не так, вам нужно проверить свойства таблицы и изменить их, чтобы они соответствовали тому, что вы действительно ищете.
Как связать новую субформу с главной формой
Субформа – это существующая форма, встроенная внутри другой формы.
При работе с реляционной базой данных, часто возникает потребность совместить данные из другой таблицы или же добавить записи сразу в несколько таблиц в одной форме. Например, просмотреть контактные данные покупателя из одной таблицы и сведения о его заказах из другой.
На сервисе QuintaDB для решения подобных задач используются субформы. В данном видео вы узнаете на примере, как создать и настроить Субформу:
Простыми словами, Субформа – это существующая форма, встроенная внутри другой формы. Они особенно эффективны для отображения данных из таблиц по типу связи «Один-к-многим».
Например, возьмем таблицу «Контракты», в которой содержаться все текущие договора с фирмой.

Задача: связать заказчика с его контрактами. В данном случае у одного заказчика, может быть множество контрактов.
Для этой цели необходимо создать новую форму: «Заказчики». В Конструкторе формы нужно добавить поле Субформа.
Данный тип поля находится в секции «Дополнительные»:

В выпадающем списке нужно выбрать таблицу «Контракты»:

Так выглядит Субформа на основной форме:

Таблица с заказчиками:

Настройки Субформы
В редактировании настроек поля Субформа можно указать:
- Название поля/колонки.
- Минимальное количество записей — минимально число записей, которое нужно заполнить через субформу.
- Установить количество записей по умолчанию — это число отображает минимальное количество записей, добавленных для заполнения при загрузке основной формы.
- Установить лимит на максимальное количество записей — это число отображает максимальное количество доступных для заполнения записей через субформу.
- Выбрать порядок отображения данных субформы в таблице.
- Выбрать порядок сортировки данных.
- Добавить всплывающую подсказку.

Во вкладке Настройки субформы есть возможность:
- Выбрать вид, в котором будут отображаться данные в таблице: Колонка или Таблица.
- Выбрать поля субформы, которые будут скрыты на основной форме.
- Включить или отключить опцию удаления зависимых записей в субформе (по умолчанию включена).
- Показывать или скрыть ссылку «Добавить», а также сменить текст ссылки.
- Показывать или скрыть иконку «Удалить».

Формула и Связанная колонка
Если в вашей таблице есть Субформа, то вы сможете использовать ее колонки в качестве операндов для Формулы, а также показывать Связанную колонку.
Пример: вернемся к таблице «Заказчики». Необходимо показать общую сумму всех контрактов для конкретного заказчика.
Для это нужно добавить поле Связанная колонка и выбрать колонку «Цена контракта».

В результате получим колонку, в которой будет отображаться суммарная цена всех контрактов:

Еще статьи:
Февральское обновление QuintaDB. Редактирование размера виджетов на Дашборде, Сумма и Среднее по результатам поиска и другое
Как сделать подчиненную форму в access 2010?
В процессе создания приложения СУБД Access или базы данных решаются две основные проблемы: первая – создание структуры БД (таблиц и связей между ними), вторая – организация интерфейса пользователя для работы с БД. Основным средством организации интерфейса пользователя в приложениях СУБД Access являются формы, которые могут быть использованы для ввода, редактирования, вывода данных и других целей.
Если в одной форме требуется просматривать данные из нескольких таблиц или запросов, то для этой цели необходимо применить подчиненные формы. Подчиненная форма – это форма, вставленная в другую форму. Например, подчиненную форму можно использовать при просмотре информации о студентах факультета в группах на примере базы данных Training_students_VP.
Подчиненные формы целесообразно создавать для отображения данных из таблиц, имеющих отношение «один-ко-многим». На примере базы данных Training_students_VP рассмотрим технологию создания подчиненной формы, которая имеет две таблицы «Группы студентов» и «Студенты» связанные отношением «один-ко-многим» (Рис.1)

Рис. 1.
Если в окне базы данных Training_students_VP открыть таблицу «Группы студентов», то можно увидеть, что рядом с каждой записью таблицы помещен знак «+» (Рис. 2).

Рис. 2.
то означает, что у этой таблицы появилась подтаблица.
Если щелкнуть на знаке «+», например, перед второй записью, то отобразится таблица «Студенты» и мы увидим, что в группе БФ-16б числится два студента (Ильин и Иванов).
Теперь создадим подчиненную форму, содержащую эти две таблицы. Существует несколько способов создания подчиненных форм. Наиболее простой способ создания подчиненных форм – это создание Автоформы.
Для создания Автоформы необходимо на вкладке Таблицы в окне базы данных выделить таблицу «Группы студентов» и на панели инструментов щелкнуть кнопку «Новый объект: форма».
В открывшемся меню надо выбрать команду Автоформа, в результате получим Главную форму «Группы студентов», в которую вставлена подчиненная таблица «Студенты». Затем сохраним форму как «Группы студентов_ПФ» и закроем ее.
Скриншот Главной и подчиненной формы представлен на Рис. 3.

Рис. 3.
Преобразуем полученную форму. Для этого в режиме конструктора в Главной форме удалим поле КодГруппы, слово «Название» заменим на «Группа» и изменим некоторые размеры формы. После проведенных изменений, автоформа (под имененм Podch_gr_st_a) будет иметь вид, представленный на Рис. 4.

Рис. 4.
Создать подчиненную форму можно и с помощью Конструктора.
Для этого в окне базы данных надо перейти на вкладку формы и щелкнуть на кнопке создать, а в качестве источника данных выбрать таблицу «Студенты» и щелкнуть ОК.
В полученную пустую стандартную форму требуется перетащить поля: Фамилия, Имя, Отчество, пол, дата рождения и другие необходимые поля, а затем сохранить и закрыть данную форму.
Аналогично надо создать вторую (главную) форму «Группы студентов». В качестве источника данных выбрать «Группы студентов» и щелкнуть ОК. В полученную форму требуется перетащить поля: Название, Курс и Семестр. Кроме того, в полученной форме предусмотреть место для таблицы «Студенты», а затем сохранить данную форму.
Затем на форму «Группы студентов» открытую в режиме конструктора можно перетащить подчиненную форму «Студенты» из окна базы данных. В результате получим Главную форму «Группы студентов», в которую вставлена подчиненная таблица «Студенты».
Формы с подчиненной формой
Формы с подчиненными формами используются для редактирования данных либо из двух связанных таблиц, либо из таблицы и запроса, связанных по типу связи один-ко-многим.
В главной форме в подобном случае будут отражаться данные из одной записи, а в подчиненной из нескольких записей, которые, в свою очередь, будут связаны с записью главной формы. Подчиненные формы имеют, как правило, ленточный тип или табличный.
Такие формы часто используются для создания вычисляемых полей, предназначенных для вычисления итоговых величин по данным записей подчиненной формы.
Рассмотрим в качестве примера создание формы, выводящей для каждого читателя библиотеки списка книг, которые находятся у него на руках, с указанием авторов книг, названий, дат выдачи и возврата, а также с использованием поля Пеня, созданным и вычисляемом в запросе, который назовем Список1.
Допустим пеню начисляют в размере 1% от стоимости книги за каждый просроченный день. Выполним расчет общей суммы пени для каждого читателя. Форма будет иметь подчиненную форму, содержащую список книг читателя.
Данные в подчиненную форму будут поступать из запроса Список1, который был создан ранее.

Попробуй обратиться за помощью к преподавателям
Создание макета формы с помощью Мастера форм
Начальный макет формы создадим с помощью Мастера форм, а потом улучшим его с помощью Конструктора.
Создадим форму, выполняя следующие операции с помощью Мастера форм:
- В окне базы данных необходимо выбрать вкладку Формы и щелкнуть кнопку Создать.
- В окне Новая форма выберем в качестве источника данных в раскрывшемся списке таблиц таблицу Читатели. Затем в другом поле выберем Мастер форм и щелкнем на кнопке ОК.
- В появившемся окне Создание форм из списка Доступные поля перенесем в список Выбранные поля следующие поля: NB, Фамилия, Кафедра и Телефон. Далее в раскрывшемся выше списке (список таблиц и запросов) выберем запрос Список1, поля которого появятся в списке Доступные поля, и перенесем в список Выбранные поля все поля запроса.
- В следующем окне выбираем тип изображения данных. Необходимо выбрать по Читатели, поскольку главной формой станет форма, отображающая сведения о читателях. Отметим переключатель Подчиненные формы для того, чтобы остальные данные вставить в подчиненную форму, и затем щелкнем на кнопку Далее.
- В следующем окне нужно выбрать вид подчиненной формы. Поскольку удобно видеть все данные о читаемых книгах, представленными в виде таблицы, отметим переключатель ленточный и щелкнем на кнопку Далее.
- Затем необходимо выбрать стиль главной формы. Стиль отобразится в окне выбора сразу после того, как отметим его в списке. Щелкнем на кнопку Далее.
- В следующем окне зададим имена главной и подчиненной форм. Access создал 2 формы, которые связаны друг с другом. Но их можно корректировать, используя режим конструктора, независимо одну от другой, а также использовать подчиненную форму независимо от главной. Назовем главную форму Читатели, а подчиненную – Список1. Щелкнем на кнопку Готово, и на экране отобразится созданная форма.
Редактирование формы с помощью Конструктора форм
Следующим шагом станет улучшение созданной формы с помощью Конструктора форм.
Затем необходимо добавить в форму Список1 поле, в котором будет вычисляться общая сумма пени для каждого читателя. Пример формы такого типа в режиме конструктора приведен на рисунке 1. В Конструкторе форм добавлено вычисляемое поле Всего пени, расположенное в области Примечание формы.
Далее необходимо выполнить следующие действия:
Открыть подчиненную форму Список1 в режиме конструктора. В области Примечание формы создадим новое вычисляемое поле и назовем его Всего пени. В окне Свойства для графы Данные зададим формулу для вычисления суммы пени (=Sum([Пеня])). Изменим текст перед этим полем. Новая форма готова.
Сохраним внесенные изменения и откроем форму для просмотра. В форме отобразятся записи обо всех выданных книгах, а также в нижнем поле общая сумма пени по всем читателям.
Отметим, что размеры полей, в которых выводится информация о книгах, изменены таким образом, чтобы авторы и название книги выводились в несколько строк для более полного отображения содержания поля.
Далее займемся улучшением внешнего вида формы Читатели. Для этого необходимо открыть форму Читатели в режиме конструктора и выполнить следующие действия:
- растянуть с помощью мыши область Заголовок формы, добавить элемент управления Надпись и ввести текст «Информация о читателях и выданных книгах» (рис. 3). Затем изменить начертание и размер шрифта для улучшения внешнего вида;
- переместить поля Кафедра и Телефон вправо для освобождения места для подчиненной формы.
- растянуть подчиненную форму на все свободное пространство.
Откроем форму в режиме просмотра.
Внизу каждой формы находится элемент управления Кнопки перехода, который позволяет перемещаться по записям, создавая новые пустые записи и заполняя их. Данный элемент управления появляется в форме в случае, когда свойство формы Кнопки перехода имеет значение Да.
В случае же изменения значения этого свойства на Нет данный элемент отображаться в форме не будет. В подчиненной форме данный элемент использовать не обязательно.
Поэтому, снова откроем форму Список1 в режиме конструктора, откроем окно Свойства для формы, найдем свойство Кнопки перехода и изменим его значение на Нет.
Создание форм с подчиненной формой
Формы с подчиненной разрешают редактировать данные или из двух связанных таблиц, или из таблицы и запроса, которые связаны типом связей один-ко-многим.
Главная форма в таком случае показывает данные из одной записи, а подчиненная из нескольких записей, которые связаны с записью главной формы. Подчиненные формы должны быть типа ленточная или таблица.
В таких формах часто создают вычисляемые поля, в которых вычисляют итоговые величины по данным из записей подчиненной формы.
Например, создадим форму, которая для каждого читателя выводит список книг, которые у него на руках, с указанием автора книги, названия книги, даты выдачи, даты возврата и поля Пеня, которое создано и вычисляется в запросе Список1.
Пеня начисляется в размере одного процента от стоимости книги за каждый просроченный день. Подсчитаем также общую сумму пени для каждого читателя. Форма будет иметь подчиненную форму со списком книг читателя.
Данные в подчиненную форму будут браться из запроса Список1, который уже создан в предшествующем пункте.
- Начальный макет формы создадим с помощью Мастера форм, а потом улучшим его с помощью Конструктора.
- Выполните такие операции для создания формы мастером форм:
- 1) В окне базы данных выберите вкладку «Формы» и щелкните на кнопке Создать.
2) В окне Новая форма в списке: «Выберите в качестве источника данных таблицу или запрос» раскройте список таблиц и выберите таблицу Читатели. Потом в другом поле выберите Мастер форм и щелкните на кнопке ОК.
3) Появилось окно Создание форм. Из списка Доступные поля перенесите в список Выбранные поля поля NB, Фамилия, Кафедра и Телефон.
Потом в раскрывающемся списке, расположенном выше, раскройте список таблиц и запросов, выберите запрос Список1.
Его поля появятся в списке Доступные поля, перенесите в список Выбранные поля все поля запроса.
4) В следующем окне необходимо выбрать тип изображения данных. Выберите «по Читатели», так как главной формой будет форма, которая показывает сведения о читателях. Отметьте переключатель Подчиненные формы, чтобы другие данные были вставлены в подчиненную форму, и щелкните на кнопке Далее.
5) В следующем окне выберите вид подчиненной формы. Так как нам удобнее всего было бы видеть данные о книгах, которые читаются, представленными в виде таблицы, отметьте переключатель «ленточный» и щелкните на кнопке Далее.
6) Выберите стиль для главной формы. Стиль показывается в окне выбора сразу же, как только вы отметите один из них. Щелкните на кнопке Далее.
7) В следующем окне необходимо задать имена форм — главной и подчиненной. Access создал две формы, связанные одна с одной.
Но вы можете корректировать их в режиме конструктора независимо одну от другой, а также пользоваться подчиненной формой не зависимо от главной.
Дайте главной форме имя Читатели, а подчиненной – Список1. Щелкните на кнопке Готово и вы увидите на экране созданную форму.
На следующем шаге улучшим созданную форму с помощью Конструктора форм.
Добавим теперь в форму Список1 поле, в котором вычисляется общая сумма пени для каждого читателя. Пример такой формы в режиме конструктора приведен на рисунке 25, Конструктором форм добавлено поле “Всего пени”, которое вычисляется, и расположено в области “Примечание формы”.
Рисунок 25. Пример формы Список1 в режиме Конструктора форм
Далее идет подробное описание перечисленных действий.
Откройте подчиненную форму Список1 в режиме конструктора. В области Примечание формы создайте новое поле, которое вычисляется.
Дайте ему имя “Всего пени”, и в окне Свойства для графы Данные задайте формулу: =Sum([Пеня]) , по которой будет вычисляться сумма пени. Измените текст перед этим полем, и ваша новая форма готова. Сохраните сделанные изменения и откройте форму для просмотра.
Вы увидите в форме записи обо всех выданных книгах и внизу в поле общую сумму пени по всем читателям. Обратите внимание на измененные размеры полей, в которых выводится информация о
Рисунок 2.5. Пример формы Список1 в режиме Конструктора форм
книгах. Это сделано, чтобы авторы и название книги выводились в несколько строк, чтобы более полно видеть содержание поля.
Улучшим теперь вид формы Читатели. Для этого откройте форму Читатели в режиме конструктора и выполните такие действия:
а) растяните мышью область “Заголовок формы”, прибавьте элемент управления Надпись и напишите текст «Информация о читателях и выданных книгах» (рисунок 26). Измените шрифт и его размер для лучшего вида.
б) переместите поля Кафедра и Телефон вправо, чтобы освободить больше места для подчиненной формы.
Откройте форму для просмотра.
Внизу каждой формы расположен элемент управления, который называется “Кнопки перехода”. Они разрешают перемещаться по записям, создавать новые пустые записи и заполнять их. Этот элемент управления появляется в форме, если свойство формы “Кнопки перехода” имеет значение “Да”.
Если изменить значения этого свойства на “Нет”, то этого элемента не будет в форме. В подчиненной форме этот элемент не нужен.
Поэтому, снова откройте форму Список1 в режиме конструктора, откройте окно “Свойства” для формы, найдите свойство “Кнопки перехода”, измените на “Нет” значение.
Не нашли то, что искали? Воспользуйтесь поиском:
Как сделать подчиненную форму в access 2010?
Подчиненная форма является элементом управления и, как и все остальные элементы, может быть добавлена в главную форму с помощью Мастера подчиненных форм. При этом ее можно создать заранее, и тогда мастеру нужно будет только указать имя добавляемой формы. Если подчиненная форма еще не создана, мастер поможет ее создать.
В качестве примера добавим в форму «Поставщики» (Suppliers) подчиненную форму, которая будет содержать список товаров текущего-поставщика (в исходной версии базы данных «Борей» товары поставщика отображаются в отдельной связанной форме при нажатии кнопки Просмотр товаров (Review Products)):
- Откройте форму «Поставщики» в режиме Конструктора и отобразите на экране панель элементов, если ее не видно.
- При нажатой кнопке Мастера (Control Wizards) перетащите с панели элементов в область данных формы элемент управления Подчиненная форма/отчет (Subform/ Subreport), поместив ее под всеми остальными элементами. Перед этим можно увеличить высоту области данных, но это необязательно, т. к. она увеличится автоматически после вставки нового элемента.
- В первом диалоговом окне мастера выберите переключатель Имеющиеся таблицы и запросы (Use existing Tables and Queries) и нажмите кнопку Далее (Next).
- Во втором диалоговом окне Мастера подчиненных форм в раскрывающемся списке Таблицы и запросы (Tables/Queries) выберите таблицу «Товары» (Products). В списке Доступные поля (Available Fields) выберите поля для включения в форму (рис. 9.35) и нажмите кнопку Далее (Next).
- В третьем диалоговом окне нужно определить поля, по которым связываются главная и подчиненная формы (рис. 9.36). Можно выбрать их из списка или задать самостоятельно. Так как таблицы «Поставщики» (Suppliers) и «Товары» (Products) связаны, в списке отображается нужная связь. Выберите ее и нажмите кнопку Далее (Next).
- В последнем диалоговом окне нужно задать имя подчиненной формы. По умолчанию предлагается имя «подчиненная форма Товары» (Products subform). Можно оставить-это имя и нажать кнопку Готово.
Рис. 9.35. Второе диалоговое окно Мастера подчиненных форм
Рис. 9.36. Третье диалоговое окно Мастера подчиненных форм
Результат работы мастера представлен на рис. 9.37.
Мастер подчиненных форм удобен тогда, когда подчиненная форма еще не создана.
Если подчиненная форма уже существует, можно просто разместить рядом окно базы данных с раскрытой страницей Формы (Forms) и главную форму, открытую в режиме Конструктора и просто перетащить мышью нужную форму из окна базы данных в главную форму. При этом главная становится подчиненной формой и автоматически устанавливается связь между формами.
Рис. 9.37. Подчиненная форма «Товары» внутри формы «Поставщики»
- Sorter etter
- Как создать подчиненные формы в базе AccessУроки по Microsoft Access
- 9 måneder siden
- Если вы не знаете, как создать подчиненные формы в базе данных Microsoft Access, то посмотрите это видео. Что вас…
11.8. Подчиненная форма Microsoft Access 2010.Dmitrii Dmitrii
Раздел 11. Элементы управления формы. Управление данными и приложением в диалоге. Дополнительные возможност…
- Как сделать СЛОЖНЫЕ формы в базе данных Microsoft Access 2016 (2 часть)Уроки по Microsoft Access
- År siden
- Если вы не знаете как создать базу данных в программе Microsoft Access 2016, то посмотрите это видео. Всего за 6 уроков…
- 13. Создание подчиненной формы «Заказы»GTIFEMBI
- 5 år siden
Продолжаем разрабатывать сложную форму. На этот раз делаем ее подчиненную часть.
Microsoft Access № 78: создание двухуровневых подчинённых форм в AccessАндрей Домостой
4 måneder siden
Как создать двухуровневые подчинённые формы в Access? КУПИТЬ ВИДЕОКУРСЫ ИЛИ ЗАКАЗАТЬ БАЗУ: goo.gl/zgcfyg ВКонта…
- Access для начинающих. Урок 7: Вложенные формыДмитрий Кивганов
- 3 år siden
- Для удобства работы с базами данных можно использовать вложенные формы разного назначения: 1) с готовыми…
- Урок 4 Access. Подчиненные формыMoodle Donguu
- 3 år siden
- Microsoft Access №59: форма подстановки в AccessАндрей Домостой
- 5 år siden
- Создание в Access вспомогательной формы для подстановки значений в главную форму. КУПИТЬ ВИДЕОКУРСЫ ИЛИ ЗАКАЗ…
- Как создать формы в Microsoft Access за 10 минутУроки по Microsoft Access
- 3 år siden
Узнайте, как легко и быстро создать базу данных Access — accesshelp.ru/category/uroki/ Готовые базы Access: 7108.ru/g0203 Если…
- Флажки и группа переключателей в базе данных AccessУроки по Microsoft Access
- 7 måneder siden
- Если вы не знаете, как добавить элементы флажки и переключатели на форму Access, то посмотрите это видео. Также…
- Как создать форму с помощью КОНСТРУКТОРА в базе данных ACCESSУроки по Microsoft Access
- 11 måneder siden
- Если вы не знаете как создать форму Access в режиме конструктора, то посмотрите это видео. В этом скринкасте…
10.1. Виды форм Microsoft Access 2010.Dmitrii Dmitrii
Раздел 10. Формы: основные возможности Управление данными и приложением в диалоге. Дополнительные возможнос…
10.3. Макет формы. Темы оформления Microsoft Access 2010.Dmitrii Dmitrii
Раздел 10. Формы: основные возможности Управление данными и приложением в диалоге. Дополнительные возможнос…
- Microsoft Access № 68: фильтрация при помощи полей со списком AccessАндрей Домостой
- 5 år siden
- Фильтрация в форме Access нужных записей при помощи полей со списком Access. КУПИТЬ ВИДЕОКУРС ИЛИ ЗАКАЗАТЬ БАЗУ:…
- 14. Связывание формGTIFEMBI
- 5 år siden
- Завершающий урок цикла, объединяющий усилия двух предыдущих уроков, в котором выполняется встраивание…
- 68 Подчиненная формаTeachProTube
- 5 år siden
Смотрите полную версию курса Microsoft Access 2010 здесь: teachpro.ru/Course/Access2010?utm_source=youtube&utm_campaign=Access2010 …
12. Создание главной части формы «Заказы»GTIFEMBI
Начинаем разрабатывать сложную форму, которая состоит из двух частей. В первую очередь делаем главную форму.
Microsoft Access № 21: создание в Access зависимых полей со спискомАндрей Домостой
Создадим в Access зависимые поля со списком. КУПИТЬ ВИДЕОКУРСЫ ИЛИ ЗАКАЗАТЬ БАЗУ: goo.gl/zgcfyg ВКонтакте: vk.c…
- Access для начинающих. Урок 8: Навигационная формаДмитрий Кивганов
- 3 år siden
- Если Вам в процессе работы с базой данных приходится часто переключаться между различными формами, то данн…
- Кнопочные формы в базе данных AccessSpecialistTV
- 2 år siden
- Обычно база данных Access содержит большое количество форм и отчётов. Чтобы упростить перемещение по СУБД…
- урок4 Использование форм в AccessСергей Титаков
- År siden
- Использование форм в Access для удобного ввода данных.
- Как создать главную кнопочную форму в Microsoft Access за 9 минутУроки по Microsoft Access
- 3 år siden
Узнайте, как легко и быстро создать базу данных Access — accesshelp.ru/category/uroki/ Готовые базы Access: 7108.ru/g0203 Если…
- Создание однотабличных форм в базе данных Microsoft AccessУроки по Microsoft Access
- 11 måneder siden
- Если вы не знаете как создать форму в базе данных Microsoft Access, то посмотрите это видео. В этом скринкасте на…
- Создание командной кнопки для формы БД AccessУроки по Microsoft Access
- 11 måneder siden
Если вы не знаете, как создать кнопку в форме Access, то посмотрите это видео. Что вас ждет в этом видео? Разбер…
- 11. Создание формы «Склад»GTIFEMBI
- 5 år siden
- Создаем форму с двумя раскрывающимися списками (для удобства ввода списка товаров и для выбора поставщика)
11.5. Управляющие кнопки Microsoft Access 2010.Dmitrii Dmitrii
Раздел 11. Элементы управления формы. Управление данными и приложением в диалоге. Дополнительные возможност…
Урок 2. Создание формы в Access 2010Mix Fix
Видео урок. Создание формы с помощью мастера форм в Access 2010 Моя партнерская программа VSP Group. Подключайся!…
- Как создать вычисляемые поля в форме AccessУроки по Microsoft Access
- 8 måneder siden
- Если вы не знаете, как создать вычисляемые поля на форме базы данных Microsoft Access, то посмотрите это видео….
- Редактирование формыВадим Константинович
- År siden
Группа VK: vk.com/coolsn ———————— Пожалуйста, не нужно рекламировать свои каналы, сайты и так далее….
3.10 Вычисляемые поля Microsoft Access 2010.Dmitrii Dmitrii
Раздел 3. Создание базы данных и работа с таблицами. Основы системы управления базами данных Microsoft Access 2010.
11.6. Свойства формы Microsoft Access 2010.Dmitrii Dmitrii
Раздел 11. Элементы управления формы. Управление данными и приложением в диалоге. Дополнительные возможност…
- 3 Работа с формами в AccessData Digger
- 4 år siden
- В этом уроке вы узнаете, как создавать формы автоматически и вручную, а также продвинутые техники работы…
- Добавление подчиненной таблицы на формуGISpanorama
- 4 år siden
- Описаны основы создания форм с главной и подчиненной таблицами данных.
- Урок 3. Создание формы с помощью конструктора в Access 2010Mix Fix
- 5 år siden
Видео урок. Создание формы с помощью конструктора в Access 2010 Моя партнерская программа VSP Group. Подключайся!…
- Microsoft Access № 14: сортировка и фильтрация при загрузке таблицы (формы) AccessАндрей Домостой
- 3 år siden
- Как задать автоматическую фильтрацию (сортировку) при загрузке таблицы, запроса, формы Access? КУПИТЬ ВИДЕОКУР…
- Microsoft Access № 75: всплывающие формы AccessАндрей Домостой
- År siden
Примеры работы со всплывающими формами Access. КУПИТЬ ВИДЕОКУРСЫ ИЛИ ЗАКАЗАТЬ БАЗУ: goo.gl/zgcfyg ВКонтакте:…
Microsoft Access № 37: фильтр по форме AccessАндрей Домостой
Как связать новую субформу с главной формой
Работа с многотабличной базой данных. ГДЗ по Информатике 11 класс.
1. Как установить связи между таблицами?
2. Как вы думаете, по каким признакам программа при установке связи автоматически определяет ее тип (1 : 1, 1 : N, N : 1)?
3. Как строится запрос с выбором данных из нескольких таблиц?
4. Почему иногда в запрос приходится добавлять таблицы, данные из которых не появляются в результатах запроса?
5. Что такое итоговый запрос? Зачем он нужен?
6. Что такое группировка?
7. Что означает группировка по нескольким полям?
8. Объясните, что даёт группировка при построении отчёта.
9. Какие функции можно использовать в итоговых запросах?
10. Как построить форму с подчинённой формой (с субформой)?
11. Как добавить подчинённую форму с помощью Навигатора форм?
12. Как связать новую субформу с главной формой?
а) «Работа с базами данных в браузере Firefox»
б) «Работа с базами данных в браузере Chrome»
Задача
Постройте базу данных, запросы, форму и отчёт так, как показано в тексте параграфа.
§ 21. Работа с многотабличной базой данных
Работа с многотабличной базой данных
Таблицы и связи между ними
Вспомним про базу данных кафе, о которой мы говорили в конце § 14 (рис. 3.38).

Построим в новой базе данных (назовём её Кафе) все необходимые таблицы (пока без связей). Поскольку в этой базе несколько таблиц, далее мы будем использовать общепринятые обозначения типа Блюда.[Название] — это означает «поле Название таблицы Блюда».
Не забудьте, что связи устанавливаются только между однотипными полями, т. е. поля Заказано.[Номер заказа] и Заказано.[Код блюда] должны быть целого типа (INTEGER), чтобы их можно было связать соответственно с номером заказа и кодом блюда. Для поля Блюда.[Цена] выберите десятичный тип (DECIMAL) и денежный формат для вывода на экран.
Чтобы установить связи между таблицами, выберем пункт меню ( В программе Microsoft Access нужно щёлкнуть на кнопке Схема данных на вкладке Работа с базами данных) Сервис – Связи. С помощью специального окна добавим в рабочую область (она пока пустая) все три таблицы (рис. 3.39).

Теперь можно «схв атить» мышью название какого-то поля и перетащить его на название поля другой таблицы, с которым нужно установить связь. С помощью этого метода установим все связи, показанные на схеме в начале параграфа. После этого окно можно закрыть, сохранив изменения.
Чтобы изменить или удалить связи, снова зайдите в меню Сервис – Связи. Для удаления связи её нужно выделить щелчком мышью и нажать клавишу Delete.
Теперь остаётся заполнить таблицы (можно придумать свои данные или взять их из § 14).
Запрос данных из нескольких таблиц
Мы построим два запроса к базе данных Кафе — простой и итоговый. Начнём с простого запроса, в котором будет собрана информация по всем сделанным заказам (рис. 3.40).

Посмотрим, откуда нужно взять данные. Номер заказа (в столбце Заказ) и дата хранятся в таблице Заказы, а название блюда и цена — в таблице Блюда. Перейдём к созданию запроса в режиме дизайна и добавим в рабочую область две названные таблицы (рис. 3.41).

Теперь добавим в столбцы бланка все нужные поля и выполним запрос. Результаты окажутся неожиданными — запрос выдаёт слишком много записей, больше, чем есть на самом деле. Дело в том, что таблицы в запросе оказались несвязанными: мы не добавили таблицу Заказано. Из неё не берутся данные, но она служит для связи таблиц в единую систему.
Чтобы исправить ситуацию, выберем пункт меню Вставка – Добавить таблицу или запрос и добавим таблицу Заказано. После этого запрос отберёт данные правильно. Остаётся только дать столбцам запроса понятные названия, для этого используется строка Псевдоним в бланке запроса,
Теперь окно конструктора запросов можно закрыть, при сохранении дайте запросу название ЗапросЗаказы. Обратите внимание, что нельзя называть запрос именем, которое совпадает с именем таблицы (например, Заказы) или другого запроса.
Двойной щелчок на имени запроса запускает его на выполнение. Щёлкнув правой кнопкой мыши на заголовке столбца, можно изменить его оформление. Установите таким образом денежный формат для поля Цена и выравнивание вправо для всех числовых данных.
Итоговый запрос
Теперь построим запрос, который считает общую стоимость каждого заказа (рис. 3.42).

Как видно из рис. 3.42, нам нужны номер и дата заказа (из таблицы Заказы) и цены блюд (из таблицы Блюда), которые нужно как-то сложить. Посмотрев на схему соединения таблиц, легко понять, что для правильного объединения данных нужно добавить в запрос таблицу Заказано, хотя ни одно её поле в результате запроса не выводится.
Создадим новый запрос в режиме дизайна и добавим в рабочую область таблицы Заказы, Заказано и Блюда. Перетащим в бланк запроса нужные поля и введём правильные заголовки столбцов (как на образце) в строке Псевдоним. Если выполнить этот запрос, мы увидим цены отдельных блюд, а не общую стоимость.
Чтобы подсчитать сумму цен по каждому заказу, в поле Цена найдём строку Функция ( В Microsoft Access эта строка называется Групповая операция. Чтобы она появилась в бланке запроса, нужно щёлкнуть по кнопке Итоги на вкладке Конструктор) и там выберем вариант Сумма. Кроме того, надо указать, какие группы записей объединять при суммировании. Для этого в той же строке Функция в полях запроса Номер и Дата выберем вариант Group (Группировка). Это значит, что сумма считается для каждой уникальной комбинации «номер запроса – дата». Поскольку у нас номер заказа уникальный, фактически будет рассчитана сумма каждого заказа. Выполним запрос и проверим, что он работает правильно. Теперь можно закрыть окно Конструктора, сохранив запрос под именем ЗапросКОплате. Запустим запрос двойным щелчком и настроим формат вывода данных.
Кроме функции Сумма в итоговых запросах можно использовать и другие функции, например количество, среднее значение, минимум, максимум.
Формы
Построим форму, показанную на рис. 3.43, в которой для каждого номера заказа выдаётся его дата, состав заказанных блюд с ценами и общая сумма. 
Форма создаётся на основе таблицы или запроса. В данном случае мы хотим получить информацию о заказе, поэтому основной источник данных — это таблица — Заказы.
Информацию о названиях блюд и ценах можно было бы взять из таблицы Блюда, но она напрямую не связана с таблицей Заказы, поэтому так сделать не получится. Однако у нас есть запрос ЗапросЗаказы, где эти данные объединены, поэтому состав заказа и цены на отдельные блюда мы возьмём из этого запроса.
Как получить общую сумму? Вспомним про ЗапросКОплате, где сумма для каждого заказа уже найдена. Таким образом, форма объединяет информацию из таблицы Заказы и двух запросов. Связь между ними устанавливается по номеру заказа — это поле есть везде.
Как мы уже упоминали, основной источник данных — это таблица Заказы. Щёлкнем на её имени правой кнопкой мыши и выберем пункт Мастер форм из контекстного меню. Включим в форму все поля.
На втором шаге мастер предлагает добавить субформу (подчинённую форму) — дополнительный источник данных, связанный с главной формой. Отметим флажок Добавить субформу (рис. 3.44).

Мастер определил, что для таблицы Заказы подчинённой является таблица Заказано (они связаны отношением 1:N) и предлагает выбрать эту таблицу. Однако нам нужно использовать запрос, поэтому отметим второй вариант: Субформа, основанная на выбранных полях. Далее выберем поля Заказ, Блюда и Цена из запроса (рис. 3.45).

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

Затем выберем расположение элементов гла вной и подчи нённой форм (рис. 3.47).

После завершения работы мастера нужно отрегулировать размеры полей и настроить формат вывода. Например, для правильного отображения цены нужно войти в конструктор форм, щёлкнуть правой кнопкой мыши на столбце Цена и выбрать пункт Заменить на — Поле валюты. Количество десятичных знаков можно изменить с помощью свойства Точность в окне свойств столбца (пункт Столбец в контекстном меню). Столбец Заказ в подчинённой форме нужно просто удалить (пункт Удалить столбец в контекстном меню).
Осталось вывести общую стоимость заказа. Напомним, что её нужно взять из другого источника данных — запроса ЗапросКОплате. Это значит, что необходимо добавить к форме ещё одну субформу. Мастер тут не поможет, придётся операцию вручную.
Откроем форму в режиме дизайна (Конструктора) и запустим Навигатор форм, щёлкнув на кнопке
на нижней панели инструментов (рис. 3.48).

Здесь MainForm — это главная форма, a SubForm — подчинённая (её содержимое можно раскрыть, щёлкнув на знаке «+»). Остальные ветви дерева — это метки и поля данных.
Щёлкнем правой кнопкой мыши на имени главной формы и выберем в контекстном меню пункт Создать – Форма. В Навигаторе форм появится новая форма с именем Форма, но на экране ничего не меняется, ведь мы пока не добавили в эту форму ни одного элемента.
Выделите название новой формы и создайте метку (надпись) с текстом «К оплате». Для этого надо щёлкнуть на кнопке
на панели Элементы управления (обычно она расположена слева) и выделить область по размеру метки (под таблицей). Свойства метки настраиваются с помощью кнопки
на нижней панели инструментов или пункта Элемент управления из контекстного меню. Обратите внимание, что в окне Навигатора форм эта метка принадлежит новой субформе. Теперь аналогично добавьте на форму поле валюты из дополнительных элементов управления.

Проверьте, чтобы оно также принадлежало второй субформе.
Осталось связать новую субформу с источником данных. Для этого выделим субформу в окне Навигатора форм и выберем Свойства в контекстном меню. На вкладке Данные установим тип содержимого — запрос, в следующей строчке выберем ЗапросКОплате (рис. 3.49).

Теперь в окне свойств добавленного поля валюты на вкладке Данные надо выбрать поле данных КОплате. После этого форма полностью работоспособна.
Отчёты
Используя подстроенный ранее запрос, составим подробный отчёт по всем заказам (рис. 3.50).

Обратите внимание, что заказы сгруппированы по датам, кроме того, данные о блюдах, относящихся к одному заказу, тоже расположены вместе. Это отчёт с группировкой, причем здесь использованы два уровня группировки — сначала по дате, а потом — по номеру заказа.
Перейдём на вкладку Запросы, выделим запрос с именем ЗапросЗаказы и выберем пункт Мастер отчетов из контекстного меню. Добавим в отчёт все поля запроса, а на третьем шаге установим два уровня группировки — сначала по полю Дата, затем — по полю Заказ ( рис. 3.51).

Остальные шаги выполняются так же, как и для простых отчётов, с которыми мы работали раньше.
К сожалению, в настоящей версии OpenOffice.org Base можно строить только самые простые отчёты. Например, невозможно подсчитать общую стоимость каждого заказа или включить в отчёт данные из двух источников (таблиц или запросов), как это мы делали для форм. Нужно отметить, что Microsoft Access обладает значительно большими возможностями для создания профессиональных отчётов.
Вопросы и задания
1. Как установить связи между таблицами?
2. Как вы думаете, по каким признакам программа при установке связи автоматически определяет её тип (1:1, 1:N, N:1)?
3. Как строится запрос с выбором данных из нескольких таблиц?
4. Почему иногда в запрос приходится добавлять таблицы, данные
которых не появляются в результатах запроса?
5. Что такое итоговый запрос? Зачем он нужен?
6. Что такое группировка?
7. Что означает группировка по нескольким полям?
8. Объясните, что даёт группировка при построении отчёта.
9. Какие функции можно использовать в итоговых запросах?
10. Как построить форму с подчинённой формой (с субформой)?
11. Как добавить подчинённую форму с помощью Навигатора форм?
12. Как связать новую субформу с главной формой?
Подготовьте сообщение
а) « Работа с базами данных в браузере Firefox»
б) «Работа с базами данных в браузере Chrome»
Задача
Постройте базу данных, запросы, форму и отчёт так, как показано в тексте параграфа.
Создание подчиненных и связанных форм
Мастер форм позволяет создавать сложные формы на основе нескольких связанных объектов (таблиц или запросов). Различают два вида сложных форм: подчиненные и связанные. На первом шаге Мастера форм из раскрывающегося списка Таблицы и запросысначала выбирают старшую таблицу. Из списка Доступные поля выбрать поле, общее для обеих таблиц и другие поля, включаемые в Форму. Затем из раскрывающегося списка Таблицы и запросывыбирают младшую таблицу и выбирают из нее нужные поля.
На втором шаге Мастера выделяют старшую таблицу и устанавливают переключатель: Подчиненные или связанные формы (рис.3.6). Затем выбирают внешний вид формы, стиль формы, на последнем шаге определяют имя формы.
Подчиненная форма — это форма, находящаяся внутри другой формы.
Подчиненная форма удобна для вывода данных из таблиц или запросов, связанных отношением «один-ко-многим». Главная форма и подчиненная форма связаны таким образом, что в подчиненной форме выводятся только те записи, которые связаны с текущей записью в главной форме.

Рисунок 3.6. Второй шаг создания сложной формы
Связанные формы не включаются непосредственно в форму. При этом вместо подчиненной формы включается кнопка, представляющая связанную форму. Если необходимо просмотреть подчиненные записи, связанная подчиненная форма вызывается на экран нажатием этой кнопки. Открывающееся содержимое связанной формы синхронизировано с текущей записью формы. Этот способ построения многотабличной формы удобен в сложных формах, перегруженных большим числом элементов управления, а также в случае, когда пользователю нет необходимости постоянно видеть связанные данные.
Создание формы в режиме Конструктора
Создавать формы любой сложности и редактировать формы, созданные Мастером, или автоформы позволяет только Конструктор форм.
Для создания формы в режиме Конструктора необходимо на вкладке Создание в группе Формы нажать кнопку Конструктор форм. Для редактирования формы ее открывают в области документов, на вкладке Главная нажимают кнопку Режим конструктора.
Окно Конструктор форм включает разделы (рис. 3.7):
Заголовок формы – область в верхней части формы, в которой можно располагать информацию, не зависящую от содержания отображаемых записей, например название организации.
Область данных – центральная часть формы, на которую выводятся данные из таблиц или запросов, пояснительные тексты, элементы управления.
Примечание формы – область в нижней части формы, в которую можно ввести информацию в виде пояснений.
Содержимое верхнего и нижнего колонтитулов отображается только при печати, соответственно в начале и в конце каждой страницы.

Рисунок 3.7 – Окно Конструктора форм
По умолчанию в окне Конструктора форм отображается раздел данных. Для вывода остальных разделов их нужно вызвать из контекстного меню.
Любая форма в Access состоит из различных объектов, которые имеют характерные для них свойства. Для каждого объекта можно определить действия, выполняемые при наступлении определенных событий. Процесс создания формы в режиме Конструктора состоит в размещении объектов в областях формы и определении для них свойств, связанных с ними событий и выполняемых действий.
При запуске Конструктора форм на ленте появляется временная вкладка Конструктор. Для размещения полей таблиц базы данных на форме в области Сервис нажимают кнопку Добавить поля, перетаскивают нужные поля с помощью мыши в раздел данных и размещают их в нужных местах. Все элементы формы состоят из двух частей – надписи и поля данных.
Режим Конструктора позволяет добавлять на форму различные элементы управления путем выбора их на ленте на вкладке Конструктор форм. Элементами управления в приложении Access называются отдельные конструктивные элементы, которые размещаются в окне формы. Такие элементы могут быть разного типа и выполнять различные функции: отображать данные из полей таблицы, хранить определенный текст (например, заголовки и надписи) или использоваться для декоративного оформления.
Для отображения текста, например, заголовка формы или пояснений, используют элемент Надпись. Для создания нового поля, не встречающегося в таблицах, создают свободное поле (элемент Поле) для отображения результатов вычислений или для приема данных, вводимых пользователем. Содержимое свободного поля нигде не сохраняется.
Элементы управления Списоки Поле со спискомиспользуются в тех случаях, когда заранее известно, что данное поле будет содержать некоторые повторяющиеся значения и для их ввода достаточно просто просмотреть список предложенных вариантов и выбрать необходимый. Списоквсегда отображается уже открытым, поэтому занимает в форме больше места, чем поля или поля со списками. Поле со списком выглядит как обычное поле формы, в правой части которого расположена кнопка со стрелкой. Для выбора значений поле со списком следует открыть. При выборе элемента Поле со списком и указания места, где будет размещаться поле,запускается мастер, который позволяет задать фиксированный набор значений или использовать значения из имеющегося в таблице поля.
Элемент управления Кнопка помещается в форму как механизм запуска некоторого определенного процесса, например: Переходы по записям (перейти к следующей, предыдущей, первой или последней записи), Обработка записей, Работа с формой (открыть, закрыть или распечатать форму), Приложение (запустить Microsoft Word или Microsoft Excel, выйти из приложения Access), Разное (выполнить запрос или макрос). Кнопки чаще всего размещают в разделах заголовка или примечания формы. Для определения действия по нажатию кнопки запускается Мастер создания кнопок.
Для декоративного оформления используются элементы Рисунок, Линия, Рамка.
Создание кнопочной формы
Для объединения объектов в едином диалоговом приложении могут быть созданы кнопочные формы. Главная кнопочная форма создается с целью навигации по базе данных, она может использоваться в качестве главного меню БД. Кнопочная форма является панелью управления приложением. Кнопки такой формы обеспечивают вызов других кнопочных форм, а также отдельных объектов: Отчетов, форм, макросов, модулей, с которых начинается решение задачи. Сюда же помещаются и кнопки для возврата к кнопочным формам предыдущих уровней выхода из Access.
На вкладке Работа с базами данныхв группе Работа с базами данныхнажать кнопку Диспетчер кнопочных форм. В появившемся окне подтвердить создание кнопочной формы. Появится окно со строкой Главная кнопочная форма,в котором формируется список кнопочных форм разных уровней
В окне диалога Изменение страницы кнопочной формыглавную кнопочную форму можно переименовать введя имя в поле Название кнопочной формы
Для создания страницы кнопочной формы в окне диспетчера кнопочных форм необходимо нажать кнопку Создать. В окне Созданиев поле Имя страницы кнопочной формыввести имя кнопочной формы, например, Формы. Можно повторить эти действия для создания страниц Таблицы, Запросы, Выход (рис. 3.8).

Рисунок 3.8. Окно диспетчера кнопочных форм
Элементами кнопочных форм являются кнопки с подписями. Подпись задается пользователем и должна по возможности кратко и точно называть действия, которые будут выполняться при нажатии кнопки. Для формирования элементов главной кнопочной формы в окне Диспетчер кнопочных формвыделить соответствующую ей строку и нажмем кнопку Изменить.
Элементы, создаваемые в кнопочной форме, могут быть подразделены на два основных типа:
Элементы, предназначенные для организации вызова других кнопочных форм
Элементы, обеспечивающие открытие формы, отчета, запуск макроса программы, выход из приложения с закрытием базы данных или перехода в режим продолжения разработки кнопочной формы диспетчером кнопочных форм.
После создания страниц создаются элементы ГКФ, для этого в «Окне диспетчер кнопочных форм» выделяется страница «Главная кнопочная форма» — «Изменить», откроется новое окно «Изменение страниц кнопочной формы».
В этом окне щелкаем на кнопке «Создать», откроется новое окно «Изменение элемента кнопочной формы». В этом окне встроке Командавыберем Перейти к кнопочной форме. В строке Кнопочная формавыбирается кнопочная форма, переход к которой должна обеспечивать создаваемая кнопка (например, Формы, Таблицы, Запросы, выход из приложения). В строке Текст вводится подпись для кнопки.
Чтобы изменить или удалить какую – либо из созданных кнопок, надо выбрать имя этой кнопки в списке Элементы данной кнопочной формыи нажать кнопку Изменить(Edit) или Удалить. При необходимости изменить порядок кнопок в списке надо выбрать элемент и нажать кнопку Вверх или Вниз. Для завершения работы с приложением создадим кнопку, выбрав для него команду Выйти из приложения, и присвоим ей имя.
Закончив создание страницы кнопочной формы, нажать кнопку Закрыть. Это позволит вернуться к списку всех кнопочных форм приложения.
В подчиненных кнопочных формах создадим кнопку для возврата к главной кнопочной форме, заполнив поля в окне Изменение элемента кнопочной формы
Для формирования кнопок, обеспечивающих выполнение задач пользователя, необходимо, чтобы они были связаны с одним из объектов приложения. Диспетчер кнопочных форм обеспечивает связь с формами, отчетами, макросами и модулями.
Для связи создаваемой кнопки с нужным объектом надо выбрать в строке Командаодну из команд: открыть форму для добавления, открыть форму для изменения, открыть отчет, выполнить макрос, выполнить программу.
Для создания кнопок Запросы или Таблицы на кнопочной форме нужно использовать макросы. Сначала в окне базы данных создают макросы «Открыть Запрос» или «Открыть Таблицу» с уникальными именами, а затем в кнопочной форме создают кнопки для вызова этих макросов. На ленте щелкнуть по вкладке Создание. На панели инструментов Другие выбрать пункт Макрос.
Появится бланк создания макроса. Выбрать из списка Макрокоманда пункт Открыть Запрос (Таблицу). В списке Имя запроса аргументов макрокоманды в нижней части бланка выбрать нужный запрос. Закрыть макрос, сохранив его под нужным именем
Для любой кнопочной формы щелкнуть на кнопке Изменить, откроется окно диалога «Изменение страницы кнопочной формы». Нажать кнопку Создать, откроется новое окно «Изменение страницы кнопочной формы», в котором вводится Текст;
выбирается из раскрывающегося списка команда: Выполнить макрос;
выбирается из списка имя макроса.
Чтобы обеспечить открытие главной кнопочной формы при открытии базы данных, выполните команду Параметры Access меню кнопки Office. Выберите объект Текущая база данныхи в списке Форма просмотра в группе Параметры приложения выберите Кнопочная форма.
Задание на выполнение
1. В базе данных на основании Таблицы 1 создать форму с помощью инструмента «Форма». Пользуясь формой, ввести две новые записи, открыть таблицу и убедиться, что данные введены в таблицу.
2. В базе данных на основании Таблицы 2 создать форму в режиме Конструктора, используя элементы управления «Надпись», «Поле со списком», «Кнопка» (для закрытия формы), «Рисунок», «Линия». Оформить окно формы, изменив шрифт, цвет заливки, расположение элементов.
3. В базе данных, содержащей две связанные таблицы, создать подчиненные и связанные формы.
4. В базе данных, содержащей две связанные таблицы, создать кнопочную форму, позволяющую открывать формы, таблицы, запросы (по 2-3 элемента на странице) и обеспечивать возврат к главной кнопочной форме. Задать открытие главной кнопочной формы при открытии базы данных.
Содержание отчета
Цель работы; постановка задачи; описание последовательности создания форм в режиме мастера и конструктора; описание последовательности создания кнопочной формы, выводы по работе.
Дата добавления: 2018-02-28 ; просмотров: 2541 ; Мы поможем в написании вашей работы!
Уроки 20 — 21
Многотабличные базы данных
(§21. Работа с многотабличной базой данных)
Построим форму, показанную на рис. 3.43, в которой для каждого номера заказа выдаётся его дата, состав заказанных блюд с ценами и общая сумма.

Рис. 3.43
Форма создается на основе таблицы или запроса. В данном случае мы хотим получить информацию о заказе, поэтому основной источник данных — это таблица — Заказы.
Информацию о названиях блюд и ценах можно было бы взять из таблицы Блюда, но она напрямую не связана с таблицей Заказы, поэтому так сделать не получится. Однако у нас есть запрос ЗапросЗаказы, где эти данные объединены, поэтому состав заказа и цены на отдельные блюда мы возьмём из этого запроса.
Как получить общую сумму? Вспомним про ЗапросКОплате, где сумма для каждого заказа уже найдена. Таким образом, форма объединяет информацию из таблицы Заказы и двух запросов. Связь между ними устанавливается по номеру заказа — это поле есть везде.
Как мы уже упоминали, основной источник данных — это таблица Заказы. Щёлкнем на её имени правой кнопкой мыши и выберем пункт Мастер форм из контекстного меню. Включим в форму все поля.
На втором шаге мастер предлагает добавить субформу (подчинённую форму) — дополнительный источник данных, связанный с главной формой. Отметим флажок Добавить субформу (рис. 3.44).

Рис. 3.44
Мастер определил, что для таблицы Заказы подчинённой является таблица Заказано (они связаны отношением 1 :N) и предлагает выбрать эту таблицу. Однако нам нужно использовать запрос, поэтому отметим второй вариант: Субформа, основанная на выбранных полях. Далее выберем поля Заказ, Блюда и Цена из запроса (рис. 3.45).

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

Рис. 3.46
Затем выберем расположение элементов главной и подчинённой форм (рис. 3.47).

Рис. 3.47
После завершения работы мастера нужно отрегулировать размеры полей и настроить формат вывода. Например, для правильного отображения цены нужно войти в конструктор форм, щёлкнуть правой кнопкой мыши на столбце Цена и выбрать пункт Заменить на — Поле валюты. Количество десятичных знаков можно изменить с помощью свойства Точность в окне свойств столбца (пункт Столбец в контекстном меню). Столбец Заказ в подчинённой форме нужно просто удалить (пункт Удалить столбец в контекстном меню).
Осталось вывести общую стоимость заказа. Напомним, что её нужно взять из другого источника данных — запроса Запрос- КОплате. Это значит, что необходимо добавить к форме ещё одну субформу. Мастер тут не поможет, придётся выполнить эту операцию вручную.
Откроем форму в режиме дизайна (Конструктора) и запустим Навигатор форм, щелкнув на кнопке на нижнеи панели инструментов (рис. 3.48).

Рис. 3.48
Здесь MainForm — это главная форма, a SubForm — подчинённая (её содержимое можно раскрыть, щёлкнув на знаке « + »). Остальные ветви дерева — это метки и поля данных.
Щёлкнем правой кнопкой мыши на имени главной формы и выберем в контекстном меню пункт Создать — Форма. В Навигаторе форм появится новая форма с именем Форма, но на экране ничего не меняется, ведь мы пока не добавили в эту форму ни одного элемента.
Выделите название новой формы и создайте метку (надпись) с текстом «К оплате». Для этого надо щёлкнуть на кнопке на панели Элементы управления (обычно она расположена слева) и выделить область по размеру метки (под таблицей). Свойства метки настраиваются с помощью кнопки на нижней панели инструментов или пункта Элемент управления из контекстного меню. Обратите внимание, что в окне Навигатора форм эта метка принадлежит новой субформе. Теперь аналогично добавьте на форму поле валюты, в котором будет выводиться сумма оплаты для выбранного заказа. Кнопка для вставки такого поля находится на панели дополнительных элементов управления.
Перед, вставкой нового поля в окне выделить сторую субформу, которой это поле должно принадлежать.
Осталось связать новую субформу с источником данных.. Для этого выделим субформу в окне Навигатора форм и выберем: Свойства в контекстном: меню. На вкладке Данные установим тип содержимого — запрос, в следующей строчке выберем Запрос — КОплате (рис. 3.49).

Рис. 3.49
Теперь в окне свойств добавленного поля валюты на вкладке Данные надо выбрать поле даннык КОгглапъе. После этого форма полностью работоспособна.
Следующая страница
Отчёты
Cкачать материалы урока