Событие Report.Open (Access)
Событие Open возникает перед предварительным просмотром или печатью отчета.
Синтаксис
expression. Открыть (отмена)
Выражение Переменная, представляющая объект Report .
Параметры
Имя | Обязательный или необязательный | Тип данных | Описание |
---|---|---|---|
Отмена | Обязательный | Integer | Параметр определяет, происходит ли открытие формы или отчета. Установка аргумента Отменазначения True (1) отменяет открытие формы или отчета. |
Возвращаемое значение
Отсутствует
Примечания
Например, процедура Открытия макроса или события может открыть пользовательское диалоговое окно, в котором пользователь вводит критерии для фильтрации набора записей, отображаемых в форме или диапазоне дат для отчета.
При открытии отчета на основе базового запроса Microsoft Access запускает макрос или процедуру события Open перед выполнением базового запроса к отчету. Это позволяет пользователю указать критерии для отчета перед его открытием. Например, в настраиваемом диалоговом окне отображается при возникновении события Open .
Если приложение может одновременно загружать несколько форм, используйте события Активация и Деактивация вместо события Открыть для отображения и скрытия настраиваемых панелей инструментов при перемещении фокуса в другую форму.
При возникновении события Close можно открыть другое окно или запросить у пользователя запись в журнале, указывающую, кто использовал форму или отчет.
Если вы пытаетесь решить, следует ли использовать событие Open или Load для макроса или события, одно существенное различие заключается в том, что событие Open можно отменить, а событие Load — нет. Например, если вы динамически создаете источник записей для формы в процедуре события Open формы, вы можете отменить открытие формы, если нет записей для отображения. Аналогичным образом событие Выгрузка можно отменить, но событие Close — нет.
Пример
В следующем примере показано, как использовать инструкцию язык SQL (SQL) для установки источника данных отчета при его открытии.
Private Sub Report_Open(Cancel As Integer)
On Error GoTo Error_Handler
Me.Caption = "My Application"
DoCmd.OpenForm FormName:="frmReportSelector_MemberList", _
Windowmode:=acDialog
'Cancel the report if "cancel" was selected on the dialog form.
If Forms!frmReportSelector_MemberList!txtContinue = "no" Then
Cancel = True
GoTo Exit_Procedure
End If
Me.RecordSource = ReplaceWhereClause(Me.RecordSource, _
Forms!frmReportSelector_MemberList!txtWhereClause)
Exit_Procedure:
Exit Sub
Error_Handler:
MsgBox Err.Number & ": " & Err.Description
Resume Exit_Procedure
Resume
End Sub
Поддержка и обратная связь
Есть вопросы или отзывы, касающиеся Office VBA или этой статьи? Руководство по другим способам получения поддержки и отправки отзывов см. в статье Поддержка Office VBA и обратная связь.