Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
М3. Создание форм для ввода, редактирования и п...doc
Скачиваний:
8
Добавлен:
12.08.2019
Размер:
3.34 Mб
Скачать

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

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

2. Выполните п. 2-6 задания 1.

3. Выполните п. 8 задания 1 для всех полей, кроме полей связи, не являющихся первичным ключом.

4. Для каждого поля связи, не являющегося первичным ключом:

4.1. Поместите на форму элемент управления Поле со списком (кнопка на вкладке Конструктор в группе Элементы управления). При этом появится окно мастера «Создание полей со списком». Выберите первый способ получения значений этим полем: объект «поле со списком будет использовать значения из таблицы или запроса» (рис. 3). Нажмите кнопку Далее.

Рис. 3. Мастер создания полей со списком. Шаг 1.

4.2. В появившемся списке выберите таблицу, связанную с источником данных создаваемой формы полем связи (рис. 4). Нажмите кнопку Далее.

Рис. 4. Мастер создания полей со списком. Шаг 2.

4.3. В следующем окне появится список полей связанной таблицы. Укажите поля, которые нужно включить в поле со списком (рис. 5). Это должно быть поле связи с таблицей - источником данных создаваемой формы, а также поле, содержащее соответствующую полю связи информацию. Добавлять поля нужно именно в этом порядке. Нажмите кнопку Далее.

Рис. 5. Мастер создания полей со списком. Шаг 3.

4.4. В следующем окне можно задать порядок сортировки. Укажите информативное поле (не поле связи). Нажмите кнопку Далее.

4.5. В следующем окне (рис. 6) задайте ширину списка так, чтобы в нем разместилась вся необходимая информация. Поставьте флажок «Скрыть ключевой столбец». Нажмите кнопку Далее.

Рис. 6. Мастер создания полей со списком. Шаг 5.

4.6. В следующем окне (рис. 7) необходимо связать созданный элемент управления с данными. Выберите действие «Сохранить в поле» и укажите поле связи таблицы – источника данных создаваемой формы (рис. 7). Нажмите кнопку Далее.

Рис. 7. Мастер создания полей со списком. Шаг 6.

4.7. В следующем окне введите текст надписи, связанной с созданным полем. Нажмите кнопку Готово.

4.8. Перейдите в режим формы и проверьте функциональность созданного элемента управления.

4.9. Вернитесь в режим конструктора и повторите п. 4.1-4.8 для остальных полей связи.

5. Запретите пользователям Вашей формы изменять значение первичного ключа.

6. Сохраните созданную форму.

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

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

ЗАДАНИЕ 3. Разработать форму для просмотра и ввода данных в таблицы, связанные с другими таблицами через таблицы-посредники.

Для выполнения этого задания выберите таблицу, связанную с другой таблицей через таблицу-посредник.

Реализация функции просмотра данных и ввода данных в таблицу источник:

1. Создайте запрос данных из связанной с источником данных таблицы.

1.1. Вызовите конструктор запросов, нажав кнопку Конструктор запросов (вкладка Создание, группа Другие).

1.2. Щелкните правой кнопкой мыши по верхней области открывшегося окна и в появившемся меню выберите пункт «Добавить таблицу» (рис. 8).

Рис. 8. Конструктор запросов. Вызов диалога добавления таблиц.

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

1.4. Укажите поля выбранных таблиц, которые нужно включить в создаваемый запрос: ключевое поле таблицы-посредника, поле связи таблицы-посредника с таблицей-источником данных, а также поля связи таблицы-посредника с другими таблицами и соответствующие им данные из других таблиц (рис. 9). Поля добавляются в запрос двойным щелчком мыши по имени нужного поля. Добавленные поля появляются в столбиках в нижней части конструктора запросов.

Рис. 9. Конструктор запросов. Добавление полей.

1.5. Проверьте результат выполнения запроса, перейдя в режим таблицы (вкладка Главная, группа Режимы).

1.6. Сохраните созданный запрос, запомните присвоенное ему имя.

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

3. Поместите на разрабатываемую форму элемент управления Подчиненная форма (рис. 10).

Рис. 10. Расположение элемента Подчиненная форма на вкладке Конструктор.

3.1. В открывшемся окне мастера подчиненных форма укажите, что форма будет использовать в качестве источника данных запрос (рис. 11). Нажмите кнопку Далее.

3.2. В следующем окне в списке «Таблицы и запросы» укажите созданный в п. 2 запрос и выберите все его поля для отображения (рис. 12). Нажмите кнопку Далее.

Рис. 11. Мастер подчиненных форм. Шаг 1.

Рис. 12. Мастер подчиненных форм. Шаг 2.

3.3. В следующем окне выберите пункт самостоятельное определение и укажите слева поле связи таблицы - источника данных, а справа поле связи таблицы-посредника (рис. 13). Нажмите кнопку Далее.

3.4. В следующем окне задайте подпись для подчиненной формы. Нажмите кнопку Готово.

3.5. В окне свойств задайте имя подчиненной формы. Запомните его.

Рис. 13. Мастер подчиненных форм. Шаг 3.

4. Сохраните форму. Полученная форма способна выполнять функцию просмотра данных в таблице-источнике и таблице-посреднике, а также ввода данных в таблицу-источник.

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