Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
БАЗЫ ДАННЫХ 2007.doc
Скачиваний:
10
Добавлен:
29.08.2019
Размер:
299.52 Кб
Скачать

8. Создание форм (часть 3).

Чтобы можно было вводить названия новых отделов (в таблицу «Отделы») или наименования новых должностей (в таблицу «Должности»), мы будем использовать следующий механизм. На форме «Сотрудники» будут помещены кнопки (с названиями, например, «Новый отдел» и «Новая должность»); нажатие на какую-либо из этих кнопок откроет соответствующую форму, в которую и можно будет ввести новую информацию.

Кроме кнопок потребуются две формы очень простого вида – для ввода новых должностей и отделов соответственно. Сначала займемся формой для ввода новых отделов. Щелкните по пунктам Создание – Другие формы – Мастер форм и в первом диалоговом окне выберите таблицу «Отделы» в качестве источника данных для формы. Переместите в список выбранных полей поля «Отделы: номер отдела» и «Отделы: наименование».

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

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

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

Теперь, когда обе вспомогательных формы созданы, перейдем к созданию кнопок на форме, которая будет использоваться как основная – «Сотрудники». Первая из создаваемых кнопок позволит вводить новые отделы в структуру фирмы.

Откройте форму «Сотрудники» в режиме конструктора и поместите на нее (например, рядом с полем со списком «Отдел») кнопку. При этом активизируется Мастер создания кнопок.

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

Следующее диалоговое окно предлагает разместить на кнопке либо текст, либо рисунок. Вариант «текст» предпочтительнее, если Вы не будете размещать рядом с кнопкой какую-либо поясняющую надпись. Введите текст Новый отдел в строке редактирования (надпись на кнопке панели «Образец» диалогового окна сразу же изменится). Последнее диалоговое окно предлагает задать имя кнопки. Вообще говоря, можно не менять имя по умолчанию, поскольку использовать его нам не придется: изучение программирования на Visual Basic выходит за рамки нашего курса. Однако можно последовать рекомендации Мастера и вместо не слишком информативного «Кнопка18» или чего-либо подобного ввести, например NewDepartment (используем английское наименование, чтобы отличать имя кнопки от надписи на ней). Теперь остается нажать кнопку «Готово», и кнопка «Новый отдел» появится на форме «Сотрудники».

В точности также, повторив все только что описанные действия, следует создать кнопку «Новая должность». Отличия состоят в том, что кнопка будет открывать форму «Редактирование таблицы Должности» и иметь другое имя и другую надпись (Новая должность). Закройте форму, чтобы сохранить Вашу работу, и вновь откройте ее, но уже в обычном режиме – чтобы проверить, как действуют кнопки.

Вопросы:

  1. Когда можно использовать инструмент «Форма»?

  2. Как создать кнопку на форме и связать нажатие на нее с каким-либо действием?

9. Ввод данных с помощью форм (часть 2).

Чтобы внести в таблицу «Отделы» запись о новом отделе автоматизации, теперь достаточно выполнить следующие действия. Сначала нажмите на кнопку «Новый отдел», чтобы вызвать форму «Редактирование таблицы Отделы», перейдите к первой пустой записи в форме и заполните поля «номер отдела» (пусть номер нового отдела будет 4) и «наименование» (Отдел автоматизации). При закрытии формы данные будут сохранены в таблице, и (проверьте!) в выпадающем списке «отделы» появится отдел автоматизации. Затем – определение новых должностей. Нажмите на кнопку «Новая должность» и, перейдя к первой пустой записи в таблице «Должности», введите информацию о новых должностях. Как уже говорилось (см. п.7), в новом отделе (кроме начальника, разумеется) будут работать:

  • системный администратор (разряд 9, оклад 3700р.),

  • инженер по обслуживанию аппаратуры (разряд 8, оклад 3200р.)

  • программист (разряд 7, оклад 3100р.).

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

4001

Тимофеев Т.Т.

начальник отдела

4002

Филиппов Ф.Ф.

системный администратор

4003

Сергеев С.С.

инженер по обслуживанию аппаратуры

4004

Михайлов М.М.

программист

Осталось только установить в новом отделе телефоны. Некоторая проблема состоит в том, что при выборе из выпадающего списка нового отдела его номер не переносится автоматически в подчиненную форму, содержащую номера телефонов. Можно либо добавить номер отдела вручную, либо (что проще) после заполнения всех полей главной формы нажать на кнопку перехода к следующей записи, а затем вернуться назад. Конечно, это не лучшее решение, но на данном этапе его можно считать приемлемым. Добавьте следующие номера телефонов для нового отдела: 11-12-42 и 11-88-20.