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

3.3.2. Действие 2: Записываем значения полей связи в таблицу-посредник.

Вызываем метод добавления новой записи в таблицу

MyTable.AddNew

MyTable – имя переменной, которая была использована для открытия таблицы-посредника

AddNew – метод добавления новой записи

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

MyTable!ИмяПоляСвязиВТаблицеПосреднике = ИмяЭлементаУправления.Value

MyTable – имя переменной, которая была использована для открытия таблицы-посредника

ИмяПоляСвязиВТаблицеПосреднике – имя поля связи таблицы-посредника с таблицей-источником данных создаваемой формы

ИмяЭлементаУправления – имя элемента управления, связанного на создаваемой форме с ключевым полем таблицы-источника данных

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

MyTable!ИмяПоляСвязи1 = ИмяПоляСоСписком1.Value

MyTable – имя переменной, которая была использована для открытия таблицы-посредника

ИмяПоляСвязи1 - имя поля связи таблицы-посредника

ИмяПоляСоСписком1 – имя, которое Вы дали полю со списком, соответствующему данному полю связи

Вызываем метод подтверждения внесенных изменений

MyTable.Update

MyTable – имя переменной, которая была использована для открытия таблицы-посредника

Update – метод подтверждения изменений

3.3.3. Действие 3: Отображаем внесенные изменения в подчиненной форме.

ИмяПодчиненнойФормы.Requery

ИмяПодчиненнойФормы – имя подчиненной формы, которое Вы ей дали

Requery – метод обновления содержимого подчиненной формы

4. Перейдите в режим формы и проверьте работоспособность созданной процедуры.

ВНИМАНИЕ: Созданная нами процедура не содержит защиты от неправильных действий, поэтому: 1. Не нажимайте на кнопку «Добавить», если остальные поля формы не заполнены; 2. Не нажимайте на кнопку «Добавить», если значения полей связи не выбраны.

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

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

1. Добавьте на форму рядом с подчиненной формой элемент управления Кнопка. При этом откроется окно мастера создания кнопок. Откажитесь от его услуг, нажав кнопку Отмена. В окне свойств задайте имя созданной кнопки. Запомните это имя. Измените надпись на кнопке на «Удалить».

2. Нажатие на созданную кнопку «Удалить» будет инициировать процесс удаления записи. Соответствующую последовательность действий необходимо связать с событием нажатия на эту кнопку. Для этого создайте процедуру ИмяКнопки_Click, где ИмяКнопки – имя, заданное Вами в п. 1.

3. Запишите в тело созданной процедуры последовательность действий для удаления записи из таблицы-посредника.

3.1. Действие 1. Открыть таблицу-посредник для редактирования.

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

Dim MyTable as DAO.Recordset

Dim – оператор, предваряющий описание локальной переменной

as – служебное слово, за которым указывается тип данных, для хранения которых предназначена переменная

MyTable – имя переменной

DAO.Recordset – тип данных – набор записей из таблицы или запроса

Открываем таблицу:

Set MyTable=Currentdb.OpenRecordset(“ИмяТаблицы”, dbOpenDynaset)

Set – оператор, предваряющий открытие таблицы

MyTable – имя переменной для открытия таблицы

Currentdb – текущая база данных – метод, позволяющий получить доступ ко всем объектам базы данных

OpenRecordset – метод, позволяющий открыть для просмотра и редактирования таблицу или запрос

«ИмяТаблицы» - имя таблицы-посредника

dbOpenDynaset – параметр, означающий, что таблица открывается и для просмотра, и для редактирования