Access 2002

Один параметр


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

For Each prm In qdf.Parameters

prm.Value – Eval(prm.Name)

Next prm

Далее процедура ResetData отменяет обновление изображения главной формы, создает набор записей для подчиненной формы на основе объекта QueryDef, присваивает свойству LockEdits значение False, чтобы в форме использовалась оптимистическая блокировка, связывает набор записей с формой и инициирует обновление изображения формы:

Me.Painting – False

Set rst – qdf.OpenRecordset

rst.LockEdits – False

Set suborders.Form.Recordset – rst

Me.Painting – True

Завершив подготовительную работу, процедура начинает транзакцию (чтобы вносимые с этого момента изменения можно было отменить), присваивая флагу транзакции mblnlnTrans значение True (это служит указанием дальнейшему коду о том, что транзакция начата), и делает доступной кнопку главной формы Cancel Changes.

Итак, как начать и завершить транзакцию, понятно. Ну а как ее отменить? Что произойдет, когда пользователь щелкнет на кнопке Cancel Changes? Связанный с этой кнопкой код приведен  7.19.

Комментарии закрыты