Как сделать подчиненную форму в access 2010?

Практическая работа №5. СУБД ACCESS 2010-2013. Создание форм

Цель: Освоение приемов работы с объектами Microsoft Access 2007-2010 , создание экранной формы.

Задание: Создайте форму на основе двух таблиц: SPSTUD , OSENKI для отображения и редактирования записей базы данных Фамилия студента.accdb.

  1. Откройте базу данных Фамилия студента.accdb.
  2. Перейдите на вкладку Создание.
  3. Выберите в группе Формы списка Другие формы Мастер форм.
  4. В окне Создание форм выбираем таблицы или запросы на основе которых будем создавать формы. Здесь же указываем на поля в таблицах или запросах, которые будем размещать в форме.

5. В диалоговом окне Создание форм выбираем поля для формы: все поля таблицы SPSTUD .

6. Не спешим нажимать кнопку Далее. В списке Таблицы и запросы выбираем таблицу OSENKI и из окна Доступные поля выбираем все поля таблицы OSENKI. Поле NOMZ размещаем в конце списка полей . Нажимаем Далее .

7. Выбираем вид представления данных: Подчиненные формы.

(данные главной таблицы и данные связанной с ней таблицы размещаются в одной форме) .

8. На следующем шаге выбираем внешний вид подчиненной формы – Ленточный .

9. Далее выбираем требуемый стиль оформления (по своему усмотрению).

10. Вводим имена форм: Студенты – для главной формы, Оценки – для подчинённой. Выбираем пункт Изменить макет формы.

Нажимаем на кнопку

11. Экранная форма открывается в Конструкторе форм ( режим Конструктор) .

12. Для редактирования формы и всех ее элементов можно воспользоваться окном Свойств. Вызвать окно Свойств можно через контекстное меню.

13. Закройте форму и откройте её двойным щелчком по имени формы Студенты . Форма откроется в режиме Формы и будет выглядеть следующим образом:

  • Создайте конспект с описанием элементов окна Свойств . Информацию об элементах окна Свойств возьмите из справочной системы. Текст конспекта сохраните в файле КонспектФорма.
  • Пример фрагмента конспекта:

Все свойства в окне разбиты на группы:

Макет — расположение, шрифт, цвет и прочее, связанное с внешним видом объекта;

Данные — в этом разделе важнейшее свойство — Данные или Источник записей — для объектов, связанных с редактированием каких-либо данных;

События — методы, т.е. процедуры (программы), выполняющиеся для объекта при наступлении определенных событий (Загрузка, Открытие, До обновления, После обновления и пр.);

Другие — прочие свойства. И так далее.

  • Создавая конспект, обратите внимание на то, что в форму можно добавлять объекты, размещённые в группе Эл ементы управления вкладки Конструктор (появляется при переходе в режим Конструктор) :
  • Опишите элементы управления в своём конспекте.
  • Сохраните файл базы данных и файл конспекта в Яндекс.Диск → Access .
  • Перейдите к выполнению Практической работы №6

Приглашайте друзей на мой сайт

Поддержите проект! Выберите один из вариантов платежа:

С карты, с баланса сотового, из Кошелька

Как сделать подчиненную форму в access 2010?

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

В Access отношение представляет собой связь между совпадающими полями двух таблиц, которая позволяет установить соответствие между записями этих таблиц. Так, например, можно связать отношением таблицы Типы и Товары, воспользовавшись общим полем КодТипа.

Каждый тип включает несколько товаров, но каждый товар может относиться только к одному типу. Это пример наиболее распространенного типа отношений, называемого один-ко-многим (то есть, одной записи в таблице Типы соответствует несколько записей в таблице Товары).

При создании форм и запросов Access распознает отношения между базисными объектами, но не всегда правильно. Поэтому лучше установить отношения между объектами вручную, тем более что это не представляет проблемы.

В этом упражнении вы установите отношение между таблицами Типы и Товары, а затем добавите к форме Типы подчиненную форму. Подчиненная форма предназначена для просмотра товаров, принадлежащих типу, отображающегося в главной форме. В качестве рабочей будет использоваться папка Office XP SBSAccessChap11Subform. Выполните следующие шаги.

  1. Откройте базу данных GardenCo, расположенную в рабочей папке.
  2. На панели инструментов Access щелкните на кнопке Схема данных (Relationships), чтобы открыть диалоговое окно Схема данных (Relationships).
  3. Если диалоговое окно Добавление таблицы (Show Table) не отображается, щелкните на кнопке Отобразить таблицу (Show Table)на панели инструментов. В списке таблиц щелкните дважды на Типы и Товары. Закройте диалоговое окно Добавление таблицы (Show Table), чтобы перейти в окно Схема данных (Relationships), которое выглядит следующим образом.

Другие типы отношений

Читать еще:  Как сделать mde в access 2010?

Помимо отношения один-ко-многим, существуют отношения один-к-одному и многие-ко-многим, но они встречаются реже.

В отношении один-к-одному каждой записи в одной таблице соответствует только одна запись в другой таблице. Этот тип отношений применяется в том случае, если таблица содержит много полей. Для удобства ее можно разбить на две связанные таблицы, поместив редко используемые поля в отдельную таблицу.

Отношение многие-ко-многим, в сущности, представляет собой два отношения один- ко-многим, которые реализуются через третью таблицу. Например, в базе данных GardenCo имеются таблицы Товары, Заказы и Детали заказа. Таблица Товары содержит по одной записи для каждого товара. Запись таблицы Заказы описывает один заказ, не включая при этом перечня заказанных товаров. Эти данные хранятся в таблице Детали заказа. То есть, одной записи в таблице Заказы соответствует несколько записей в таблице Детали заказа. Очевидно, что между таблицами Заказы и Детали заказа существует отношение один-ко-многим. Но такое же отношение связывает таблицы Товары и Детали заказа. Таблица Детали заказа является связующей в отношении многие-ко-многим между таблицами Товары и Заказы. Проще говоря, один и тот же товар может содержаться в нескольких заказах, а каждый заказ может включать несколько товаров.

На схеме данных появится линия, отображающая отношение один-ко-многим между полями КодТипа в обеих таблицах, как показано ниже.

Создание главной и подчиненной форм с помощью мастера

Если при создании формы известно, что она должна содержать подчиненную, можно поручить эту работу мастеру, выполнив следующие шаги.

  1. На панели объектов щелкните на пункте Формы (Forms), а затем щелкните на кнопке Создать (New) на панели инструментов окна базы данных
  2. Щелкните на Мастер формы (Form Wizard), выберите базовую таблицу и щелкните на кнопке ОК.
  3. Убедитесь, что в поле Таблицы и запросы (Tables/Queries) указана выбранная вами таблица, и щелкните на кнопке >>, чтобы включить все поля в новую форму.
  4. Откройте список поля Таблицы и запросы (Tables/Queries) и выделите базовую таблицу для подчиненной формы.
  5. Щелкните дважды на нужных полях, чтобы добавить их в список выбранных полей, а затем щелкните на кнопке Далее (Next).
  6. Примите заданный по умолчанию вариант Таблица (Datasheet) и щелкните на кнопке Далее (Next).
  7. Щелкните на кнопке Готово (Finish), чтобы создать главную и подчиненную формы.

Теперь можно доработать форму в соответствии с вашими нуждами так же, как это делалось в предыдущем упражнении.

БД 6 семестр / Лабораторные работы / ЛР 8 Формы MS Access 2010 2013-14 / ЛАБОРАТОРНЫЙ ПРАКТИКУМ 8.2 Подчиненные формы Ограничения доступа

ЛАБОРАТОРНЫЙ ПРАКТИКУМ 8.2

(ЛАБОРАТОРНАЯ РАБОТА №8, Базы данных)

ПОСТРОЕНИЕ многотабличных форм С ИСПОЛЬЗОВАНИеМ СУБД ms ACCESS 2010. Подчиненные формы. ограничения доступа к данным

Цель: овладеть практическими навыками создания форм с использованием мастера и конструктора, настройки элементов формы, использования вычислений в форме.

Оборудование: компьютерный класс.

Программное обеспечение: СУБД MS Access 2010.

СОЗДАНИЕ МНОГОТАБЛИЧНОЙ ФОРМЫ С ПОМОЩЬЮ МАСТЕРА

Многотабличная форма создается для работы с данными из нескольких взаимосвязанных таблиц. Источником данных такой формы является многотабличный запрос. При этом форма может быть простой, отображающей одну запись в столбик, или ленточной, отображающей все записи в табличном виде с надписями в заголовке формы. Для создания такой формы может быть использована команда Форма или Несколько элементов. Форма, построенная на многотабличном запросе может быть названа одиночной.

Многотабличная форма может быть составной: состоять из главной формы и одной или нескольких подчиненных включаемых форм. Подчиненная форма строится, как правило, на основе таблицы, подчиненной таблице-источнику записей главной формы, т.е. находиться с ней в отношении 1:М. Подчиненная форма отображает данные из всех записей подчиненной таблицы, которые связаны с записью, отображаемой в главной форме.

Основным средством создания многотабличной формы можно считать мастер форм, который, запросив у пользователя сведения о включаемых в форму полях из нескольких взаимосвязанных таблиц и запросов, создает составную или одиночную форму. При этом мастер может сам создать запросы на выборку, используемые в качестве источника записей формы.

Полученная с помощью мастера форма может быть отредактирована в режиме макета или конструктора. Режим конструктора позволяет детально просмотреть структуру формы, настроить любой ее раздел. Некоторые задачи удобно выполнять в режиме конструктора, а не макета, некоторые могут выполняться только в режиме конструктора.

Задание. С помощью мастера создайте форму для работы с данными о накладных и отгрузке товаров. Очевидно, такая форма должна строиться на основе двух таблиц НАКЛАДНАЯ и ОТРГУЗКА, находящимися в отношении 1:М и связанных полем Код_накл. Для одновременной работы с записью главной таблицы и несколькими связанными записями подчиненной таблицы целесообразно построить многотабличную составную форму, в которой в главную форму будет встроена подчиненная форма.

Читать еще:  Как сделать удаление в access?

Для разработки формы выполните следующее:

На основе главной таблицы создайте простую форму Накладная с макетом в столбик.

На основе подчиненной таблицы командой Несколько элементов создать ленточную форму Отгрузка. Это многозаписевая форма.

Закрыть вторую форму, оставив первую. В режиме макета.

Перетащить вторую форму из области навигации в первую форму, она отобразится в элементе управления Подчиненная форма/отчет.

Если не установилась связь между формами, следует в главной форме открыть свойства элемента управления Подчиненная форма/отчет и на вкладке Данные заполнить строки основные поля и Подчиненные поля. Это можно сделать с помощью построителя, вызываемого в строке первого свойства.

Связь главной формы Накладная и подчиненной формы Отгрузка осуществляется по ключу Код_накл.

При разработке подобных форма для полноценной работы главная и подчиненные формы могут дополняться данными из нескольких таблиц. Тогда предварительно необходимо создать соответствующие запросы на выборку данных, которые будут явялться источниками записей для главной и подчиненных форм. Разработанная форма представлена на рис.1.

Рис.1 – Составная форма для работы с накладными

Вычисление итогового значения в подчиненной форме и вывод его в текущей записи основной формы

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

Если главная форма и ее подчиненная форма построены на основе таблиц, между которыми установлена связь типа 1:М, в основной форме выводится одна текущая запись, а в подчиненной форме – связанные с ней записи.

Пусть необходимо подсчитать общее количество единиц товаров по накладной и отобразить его в форме.

Откройте форму Накладная, включающую одну подчиненную форму Отгрузка в режиме конструктора. Создайте вычисляемый элемент управления и запишите в него выражение: =Sum([Кол_отпр]) (см. рис.1).

Самостоятельно: для отображения результата в главной форме создайте там вычисляемый элемент управления и запишите в него выражение:

Это выражение является ссылкой на элемент управления Поле12 в примечании подчиненной формы, содержащий общее количество единиц товара. Общий формат ссылки:

=[Имя подчиненной формы].[Form]![Имя поля в подчиненной форме]

Чтобы не отображалось примечание подчиненной формы, установите для его свойства Вывод на экран значение Нет.

Рис.2 – Отображение итогового значения в главной форме, вычисленного в подчиненной форме

Ограничение доступа к данным через форму

Защита данных поля от изменений

Для защиты данных поля от изменений используется свойство Блокировка. Она может быть установлена для любого поля формы. Чтобы защитить поле, надо открыть форму в режиме конструктора или макета, выделить поле и вызвать свойства поля с помощью контекстного меню. В окне свойств на вкладке Данные в строке Блокировка выбрать Да. По умолчанию для всех полей в свойстве Блокировка устанавливается значение Нет. После установки этого свойства поле доступно только для чтения.

Установка ограничений на корректировку записей через форму

Для того чтобы при работе через форму записи были доступны только для чтения, следует в свойствах формы на вкладке Данные в строках Разрешить добавление, Разрешить удаление, Разрешить изменение задать значение Нет.

Сделать записи доступными только для чтения можно также, выбрав для свойства Тип набора записей значение Статический набор. Указанные свойства могут устанавливаться независимо друг от друга. Например, при запросе на удаление может быть разрешено добавление и изменение записей.

Свойство формы Блокировка записей определяет способы блокировки записей при попытке двух пользователей одновременно изменить записи в некотором наборе записей сетевой базы данных. Когда один пользователь изменяет запись, автоматически может блокироваться только изменяется запись или все записи набора. При этом друге пользователи не могут изменять или только одну запись, или весь набор до завершения с ней работы первого пользователя.

Свойство Ввод данных при значении Да определяет режим формы, при котором разрешен только ввод новых записей, просмотр существующих записей при этом не доступен.

При открытии формы выводится пустая запись, с которой можно начать ввод новых записей. С вновь введенными записями можно выполнять все разрешенные действия: удаление, изменение. При новом открытии формы снова делается доступным только режим ввода новых записей.

Защита данных подчиненной формы от изменений

Защитить содержимое всех полей подчиненной формы, сделав его доступным только для чтения, можно с помощью свойства Блокировка, установленное для подчиненной формы.

Для защиты данных подчиненной формы от изменений надо выделить соответствующий элемент, открыть его свойства и выбрать вкладку Данные. В строке Блокировка выбрать Да. При этом станет невозможным изменение, добавление, удаление данных в полях подчиненной формы, Кроме того, станет невозможным добавление новых записей.

Читать еще:  Как сделать сортировку по дате в access?

Установка для свойства Доступ значения Нет приводит не только к запрету на любые изменения, но и невозможности перемещаться по записям, просматривать записи за пределами рамки подчиненной формы.

Вопросы для самоконтроля

Какой внешний вид подчиненной формы нужно выбрать, чтобы в нем выводились надписи полей, определенные в свойствах таблиц?

Позволяет ли мастер выбрать нужный стиль оформления формы?

Какой элемент управления позволяет создать вычисляемое поле в форме?

С какого знака начинается выражение, записываемое в вычисляемое поле?

В каком разделе формы размещается вычисляемое поле для расчета итогового значения для подчиненной формы?

Как отобразить итоговое значение, рассчитанное в подчиненной форме, в главной форме?

Какой формат имеет ссылка на вычисляемое поле в подчиненной форме?

Сохраняется ли значение вычисляемого поля в таблице?

Что нужно сделать, если не работает связь основной и починенной форм?

Должны ли поля, по которым устанавливается связь между основной и подчиненной формами, иметь одинаковые имена?

Можно ли перетаскиванием таблицы из окна БД в форму создать в ней подчиненную форму?

Какие записи подчиненной таблицы отображаются в подчиненной форме?

Как в форме установить защиту от изменения данных поля?

Может ли мастер построить форму на основе ранее созданного запроса?

Как создать форму для ввода данных в таблицу?

Как сделать доступными только для чтения записи главной формы? Подчиненной формы?

Как сделать подчиненную форму в access 2010?

На этом шаге вы познакомитесь с видами форм.

Работа с данными в БД непосредственно осуществляется в таблицах и запросах. При этом предлагаемые возможности по изменению структур таблиц и содержащихся в них данных полезны скорее разработчику, нежели пользователю. В Access имеются широкие возможности по созданию интерфейса пользователя при помощи форм. Создавая форму в БД, разработчик может преследовать одну из не скольких целей.

  1. Отображение и изменение данных. Наиболее часто формы создаются именно для вывода и изменения данных в БД. При этом разработчик может задать любой вид отображения информации, т.е. произвольный набор полей из одной или нескольких таблиц или запросов (если поля находятся в разных таблицах, то между этими таблицами должна быть связь). Также можно установить любые ограничения на редактирование данных в форме, т.е. разрешить редактирование одних полей и запретить изменение других.
  2. Ввод данных. Формы могут использоваться для ввода новых данных в таблицу, при этом ввод будет выполняться пользователем в том формате, который задан разработчиком. Другими словами, пользователь может вводить значения только для тех полей, которые представлены в форме.
  3. Печать. Несмотря на то, что для печати данных в БД используются отчеты, содержимое формы также можно распечатать.
  4. Сообщения. Дополнительная возможность использования форм заключается в создании с их помощью различных сообщений, отображаемых впоследствии в той или иной ситуации для облегчения работы пользователя. В таком виде формы используются в приложениях.

Таким образом, можно сделать вывод, что формы в Access являются главным средством разработки пользовательского интерфейса. В зависимости от того, с какой целью создается форма, разработчик определяет параметры ее внешнего вида. Существует несколько основных видов форм.

Многостраничная (в столбец) — поля записи выводятся в один столбец, при этом в один и тот же момент времени в форме отображается содержимое только текущей записи. На рисунке 1 представлена многостраничная форма Студенты, в которой отображены данные о студентах из таблицы Студенты.


Рис. 1. Многостраничная форма

Ленточная — все поля записи выводятся в одну строку, при этом в форме отображаются все записи. В ленточной форме Студенты1, представленной на рисунке 2, отображены все записи из таблицы Студенты.


Рис. 2. Ленточная форма

Табличная — отображение записей осуществляется в режиме таблицы. На рисунке 3 представлена табличная форма Студенты, в которой все записи таблицы Студенты выведены в табличном режиме.


Рис. 3. Табличная форма

Подчиненная — используется при необходимости вывода данных, связанных отношением «один-ко-многим», при этом в подчиненной форме отображаются записи из таблицы, которая соответствует слову «многим». В форме ОценкиСтудентов (рис. 4), кроме данных из таблицы Студенты, имеется также подчиненная форма, в которой отображаются записи из таблицы Успеваемость. Необходимо обратить внимание на тот факт, что в столбце Предмет этой формы выводятся названия предметов, в то время как в таблице Успеваемость, которая служит источником данных для подчиненной формы, имеются только коды предметов. Подобный эффект достигается с помощью мастера подстановок для таблицы Успеваемость, причем в качестве подстановки для по ля КодПредмета было использовано поле Название из таблицы Предметы.


Рис. 4. Подчиненная форма

На следующем шаге рассмотрим создание формы с помощью мастера.

Предыдущий шаг Оглавление Следующий шаг

Ссылка на основную публикацию
Adblock
detector