litceysel.ru
добавить свой файл
1
Лабораторная работа №4


Система управления базами данных Access 2010

Создание сложных форм.



Перед созданием сложных форм проверьте следующее:



При необходимости повторите процедуру подключения полей со списком !!!

Назначение Формы и суть ее использования

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


Загрузите Вашу базу данных.


Создание запроса для формирования заказа
  • Щелкните по закладке Запросы, выберите пиктограмму Конструктор запросов;


  • В появившемся окне Добавление таблицы щелкните мышкой по названию Клиент, нажмите кнопку Добавить; щелкните мышкой по названию Заказы, нажмите кнопку Добавить. Нажмите кнопку Закрыть. На поле должны появиться две таблицы, связанные отношением один-ко-многим.

  • Перетащите мышкой слово ОбращатьсяК таблицы Клиент в первую строку первого столбца бланка запроса, затем аналогично из таблицы Заказы перенесите слова КодКлиента, КодСотрудника, КодЗаказа в последующие столбцы.

Нажмите кнопку закрытия Запроса - и подтвердите Сохранение макета Запроса.

  • В открывшемся окне в поле Имя запроса наберите имя ЗапросЗаказ и нажмите кнопку ОК.


Просмотрите вновь созданную таблицу запроса «ЗапросЗаказ». Так как данные в таблицу Заказы не введены запрос также пустой.


Создание базовой формы для формирования заказа


  • Щелкните по меню Создание;

  • Щелкните по пиктограмме Мастер форм, появится диалоговое окно Создание форм;

  • В поле Таблицы и запросы выберите в качестве источников данных запрос ЗапросЗаказ. Переместите информацию из поля Доступные в Выбранные поля, нажав кнопку >> , нажмите кнопку Далее, выберите вид представления данных "- Заказы", нажмите кнопку Далее, выберите внешний вид формы в один столбец, нажмите кнопку Далее, задайте имя формы Заказы и нажмите Готово. Появится окно формы с полями из таблиц Заказы и Клиент.

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



Выберите нового клиента. Должны поменяться данные в поле Обращаться к .

Выберите Сотрудника.

Щелкните по

кнопке установки полей для новой записи.

Кнопки просмотра записей Данные ушли в таблицу Заказы.

Не закрывая формы откройте таблицу Заказы и убедитесь, что в ней появились данные по заказу 1.

Только после ввода информации о клиенте можно создавать заказ по данному клиенту !!!

Закройте таблицу Заказы. Вернитесь к форме.


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




Теперь увеличьте макет формы по горизонтали, захватив его курсором за правый край.

Курсор должен принять вид


Теперь увеличьте макет по




вертикали, захватив его курсором за нижнюю грань Примечание формы.

Макет Формы состоит из Заголовка формы (поле ниже надписи имени формы), Области данных и Примечания формы. В эти структуры макета вводятся объекты управления формой.



  • Измените название поля Сотрудник на Продавец, для чего щелкните мышкой по полю Сотрудник , выделите текст. Теперь можно редактировать текст.

  • Уменьшите размер поля ОбращатьсяК. Для этого щелкните мышкой по этому полю, установите курсор по середине правой грани поля; курсор должен принять

вид, Нажмите левую клавишу мышки, переместите мышку и соответственно грань поля влево.

  • Перейдите в режим Таблицы;

Данная форма позволяет выполнять две функции :


  1. просматривать ранее созданные заказы, посредством пользования кнопкой листания номеров Записи (внизу, слева). Полистайте записи;

  2. создавать новые заказы на основе списка клиентов, информация о которых имеется в базе данных (посредством вызова списка) и данная информация будет занесена в таблицу Заказы.

  3. Фиксировать фамилию продавца. Код заказа присваивается автоматически.


Создание инструмента для управления формой (управляющая кнопка)


  • Перейдите в режим Конструктора.



  • Щелкните курсором на значке Кнопка в панели Элементы управления. Перемещайте курсор мышки в сторону макета формы. Должен появиться курсор в виде перекрестия. Этим перекрестием нарисуйте на поле макета справа от поля КодКлиента небольшой прямоугольник (при нажатой левой клавиши мышки). Отпустите клавишу мышки. В появившемся диалоговом окне Создание кнопок щелкните курсором в поле Категории на режим Работа с формой, в поле Действия щелкните курсором на режиме Обновить данные формы, нажмите Далее. В новом диалоговом окне в разделе Текст наберите слово Регистрация, нажмите Далее, задайте имя кнопки Обновить, нажмите Готово.


Создание в базовой форме подчиненной формы для выбора товара из Базы данных и ввода его стоимости

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

Создание связанных подчиненных форм


  • Откройте форму Заказы в режиме Конструктора;

  • Увеличьте поле макета формы по вертикали, для чего подведите курсор к нижней грани поля (поле в клеточку), курсор должен принять форму , нажмите левую клавишу мышки и , удерживая ее, переместите мышку , а с ней и грань поля вниз.
  • Щелкните курсором на значке Подчиненная форма/отчет в Панели элементов. Перемещайте курсор мышки в сторону макета формы. Должен появиться курсор в виде перекрестия. Этим перекрестием нарисуйте на поле макета прямоугольник (при нажатой левой клавиши мышки). Отпустите клавишу мышки. В появившемся диалоговом окне Мастер подчиненных форм переключатель должен стоять на режиме Имеющиеся таблицы и запросы , нажмите Далее; в поле Таблицы и запросы щелкните по кнопке выбора и выберите таблицу Заказано, переместите из раздела Доступные поля в раздел Выбранные поля имена полей Код товара Цена, нажмите Далее. В новом диалоговом окне в разделе Выбор из списка выберите 'Заказано' для каждой записи'<Инструкция SQL> ..', нажмите Далее, нажмите Готово.


  • Появится поле формы с названием подчиненная форма Заказано. Измените надпись над полем на надпись Подбор товара. Установите режим формы, измените при необходимости ширину полей. Если поля не вмещаются, снова перейдите в режим Конструктора и измените размер данной формы в макете.

  • Установите режим Формы.

Проверьте работу подчиненной формы

ВНИМАНИЕ: проверка требует определенной последовательности. Сначала обнулите все данные, для чего нажмите на кнопку установки полей для новой записи на линейке листания записей (самая нижняя в левом углу), крайняя правая кнопка.



Затем введите информацию о клиенте (поле с именем Клиент) и только затем названия товара в поле Марка и значение цены в соответствующее поле .


Данная форма позволяет выполнять две функции :


  1. Просматривать ранее занесенные сведения о товарах в принятых заказах, посредством пользования кнопкой листания номеров Записи (самая нижняя линейка просмотра номеров записи). При этом связанная с ними информация отображается и в форме Заказы ( Клиент, Продавец и т.д.)

Создание раскрывающихся информационных полей.

Кнопка – Макрос.


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

Создайте форму с именем Товар.


  • Щелкните по меню Создание;

  • Щелкните по пиктограмме Мастер форм, появится диалоговое окно Создание форм;

  • В поле Таблицы и запросы выберите в качестве источников данных таблицу Товар Переместите имена полей Марка Цена из поля Доступные в Выбранные поля, нажимая кнопку > , нажмите кнопку Далее, выберите внешний вид формы в один столбец, нажмите кнопку Далее, задайте имя формы Товар и нажмите Готово. Появится форма, заполненная данными ранее введенными в таблицу Товар. Закройте форму.

  • Перейдите к форме Заказ;

  • Установите режим Конструктора;

  • Щелкните курсором на значке Кнопка в панели Элементы управления. Перемещайте курсор мышки в сторону макета формы. Должен появиться курсор в виде перекрестия. Этим перекрестием нарисуйте на поле макета над формой Подбор товара небольшой прямоугольник (при нажатой левой клавиши мышки). Отпустите клавишу мышки. В появившемся диалоговом окне Создание кнопок щелкните курсором на кнопке Отмена.

  • Щелкните правой клавишей мышки по созданной кнопке. В появившемся меню щелкните по команде Свойства. В появившемся Окне свойств щелкните по закладке События и затем по строке Нажатие кнопки. Щелкните по появившейся в этой строке кнопке с тремя точками. Появится диалоговое окно Построитель.

  • В появившемся окне Нажатие кнопки в поле Добавить новую макрокоманду выбрать команду Открыть форму.

  • В новом окне в строку Имя формы введите Товар, в строке Режим данных выберите команду Только чтение.

  • Закройте окно для ввода свойств и Окно свойств.
  • Щелкните по кнопке и затем замените имеющуюся надпись на надпись Запрос информации о товаре.


  • Перейдите в режим Формы и проверьте работу кнопки.


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

Формирование заголовка

  • Загрузите форму Заказ.

  • Установите режим Конструктора.

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

  • Щелкните по кнопке (Надпись) в панели Элементы управления. Нарисуйте на поле макета заголовка формы прямоугольник (при нажатой левой клавиши мышки). Отпустите клавишу мышки. В появившемся прямоугольнике сделайте надпись Счет-фактура.

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


Установка текущей даты




  • Щелкните по кнопке (Поле) в панели Элементы управления. Нарисуйте на поле макета заголовка формы прямоугольник (при нажатой левой клавиши мышки). Отпустите клавишу мышки. В появившемся прямоугольнике справа введите формулу =Date() .

  • Переместите левое поле надписи поближе к полю с формулой и введите в него надпись Дата формирования счета.

Ввод в заголовок рисунка

Щелкните по кнопке (Рисунок) в панели Элементы управления. Нарисуйте на поле макета заголовка формы прямоугольник (при нажатой левой клавиши мышки). Отпустите клавишу мышки. В появившемся поле Проводника выберите графический файл логотипа СГУПС предварительно скачав его в свою папку с сайта СГУПСа.


Выполнение вычислений в формах


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


  • Откройте форму Подчиненная форма Заказано.

  • Перейдите в режим Конструктора.

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

  • Щелкните по кнопке (Поле) в панели Элементы управления. Нарисуйте на поле макета Примечание формы прямоугольник (при нажатой левой клавише мышки). Отпустите клавишу мышки. В появившемся прямоугольнике справа введите формулу =Sum([Цена]).

  • Откройте панель Свойства для данного поля, щелкните по закладке Данные, в строке Доступ введите Нет, в строке Блокировка введите Да. В закладке Макет, строке Формат поля установите денежную систему единиц. В закладке Другие в строку Имя введите название Сумма. Закройте панель свойств.

  • Переместите левое поле надписи поближе к полю с формулой и введите в него надпись Сумма.

  • Закройте форму.

  • Перейдите к форме Заказ;

  • Установите режим Конструктор;

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



=[подчиненная форма Заказано].[Form]![Сумма]

в строке Доступ введите Нет, в строке Блокировка введите Да. В закладке Макет, строке Формат поля установите денежную систему единиц. В закладке Другие в строку Имя введите название Итого. Закройте панель свойств.


  • В темный прямоугольник слева введите текст Стоимость товара.


Форма должна иметь вид, приведенный в примере Приложение 8


Выполнение работ с использованием формы Заказы


  1. Обнулите данные.

  2. Ведите данные по Клиенту, Продавцу.

  3. Введите данные по наименованиям товаров.

  4. Нажмите кнопку Запрос.

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

  6. Нажмите кнопку Обновить. Проверьте правильность подсчета результатов.

  7. Откройте таблицы Заказы Заказано и убедитесь в занесении туда данных.