Объектная модель Microsoft Access 2002

Объектная модель Microsoft Access 2002 реализована в виде набора объектов, собранных в библиотеке Access. Основным элементом в иерархии объектов библиотеки Access является объект Application. Он содержит ссылки на все объекты и семейства объектов Microsoft Access. Каждый объект из библиотеки Access имеет в качестве свойства объект Application (в том числе и сам объект Application имеет свойство Application), который ссылается на активное приложение Microsoft Access.

Иерархия объектов и семейств объектов Microsoft Access 2002 представлена на рис. 13.1 — 13.3. Названия объектов, являющихся элементами семейств, приведены в скобках. Новые объекты, появившиеся в Microsoft Access 2002, отмечены звездочкой. Иерархия объектов, представленная на рисунках, образована следующим образом:

Если свойство объекта представляет собой ссылку на объект, определенный в другой библиотеке (не в библиотеке Access), для него приводится название этой библиотеки.

Рис. 13.1. Первый уровень иерархии объектной модели Microsoft Access 2002

Рис. 13.2. Второй уровень иерархии объектной модели Microsoft Access 2002 — объекты баз данных

Рис. 13.3. Второй уровень иерархии объектной модели Microsoft Access 2002 — объекты для работы с базой данных и проектом

Глядя на схемы объектной модели, можно определить какие объекты описывают приложение, как они связаны между собой и как составить ссылку для доступа к конкретному объекту.

Табл. 13.3 содержит описание объектов Microsoft Access 2002, определенных в библиотеке Access, если не указана другая библиотека объектов.

Таблица 13.3. Описание основных элементов объектной модели Microsoft Access 2002

Объект

Тип

Описание

Application
Объект Ссылается на активное приложение Microsoft Access. Используется для управления приложением. Этот объект является" СОМ-компонентом и может быть использован другим приложением, которое поддерживает Automation

forms

Семейство

Содержит объекты form, соответствующие


 

всем открытым в данный момент формам в


 

базе данных Access

form

Объект

Ссылается на конкретную форму Access,


 

описывает свойства формы, элементы


 

управления и модуль, содержащий процедуры формы. Каждый объект form содержит в


 

качестве свойства по умолчанию семейство


 

Controls, представляющее элементы


 

управления данной формы. Поэтому доступ


 

к элементам управления формы может осу-


 

ществляться двумя способами: явно (как к


 

элементу семейства Controls) и неявно


 

(как к элементу объекта form):


 

forms ! Заказы. Controls ШомерЗаказа,


 

forms ! Заказы ! НомерЗаказа.


 

Последний способ доступа обрабатывается


 

быстрее

Reports

Семейство

Содержит объекты Report, соответствую щие всем открытым в данный момент отчещие всем открытым в данный момент отчетам в базе данных Access




 


 

Report

Объект

Ссылается на конкретный отчет Access, опи-


 

сывает свойства отчета, элементы управле-


 

ния и модуль, содержащий процедуры отче-


 

та. Доступ к элементам управления отчета


 

осуществляется с помощью семейства


 

Controls (свойства по умолчанию) двумя


 

способами — явно или неявно

Modules

Семейство

Содержит объекты Module, соответствую-


 

щие всем открытым в данный момент стан-


 

дартным модулям и модулям объектов в


 

базе данных Access

Module

Объект

Ссылается на конкретный стандартный мо-


 

дуль или модуль класса Access, описывает


 

содержимое модуля в строках кода.


 

Приложение Microsoft Access, кроме стан-


 

дартных модулей, не привязанных к объек-


 

там, модулей форм и отчетов, привязанных,


 

соответственно, к форме или отчету, может


 

иметь модули классов, не зависящие от


 

других объектов приложения и определяю-


 

щие новый класс. Тип модуля можно узнать


 

с помощью свойства Туре

 

Объект

Тип

Описание

References

Семейство

Содержит объекты Reference, представ-



ляющие собой установленные ссылки в при-



ложении Access, С помощью данного семей-



ства в приложении можно динамически



устанавливать или удалять ссылки на внеш-



ние библиотеки

Reference

Объект

Соответствует ссылке, установленной на



библиотеку объектов или типов, содержит



информацию о ссылке, включая имя биб-



лиотеки и путь к соответствующему файлу

Printers

Новое семей-

Содержит объекты Printer, представляю-


ство

щие собой установленные ссылки на все



печатающие устройства, доступные в при-



ложении

Printer

Новый объект

Ссылается на конкретное печатающее уст-



ройство

Da taAccess Pages

Семейство

Содержит объекты DataAccessPages, со-



ответствующие открытым в данный момент



страницам доступа к данным в базе данных



или проекте Access

DataAccessPage

Объект

Ссылается на конкретную страницу доступа



к данным Access. Описывает свойства стра-



ницы

Screen

Объект

Ссылается на конкретную форму, отчет или



элемент управления, который в данный мо-



мент имеет фокус

DoCmd

Объект

Позволяет выполнить макрос или встроен-



ную инструкцию Access с помощью проце-



дуры на Visual Basic

VBE

Объект из

Предоставляет доступ к функциональным


библиотеки

средствам редактора Visual Basic для Micro-

 

VBIDE

soft Access

DefaultWebOptions

Объект

Предоставляет доступ к атрибутам приложе-



ния, используемым в Access по умолчанию



при открытии и сохранении Web-страниц

WebOptions

Новый объект

Предоставляет доступ к атрибутам конкрет-



ной страницы доступа к данным, используе-



мым в Access при открытии и сохранении



Web-страниц. Эти атрибуты имеют более



высокий приоритет, чем соответствующие



атрибуты приложения. Если установлены



атрибуты страницы доступа к данным, то

 


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



работы с Web-страницами игнорируются.

 

Объект

Тип

Описание

References

Семейство

Содержит объекты Reference, представляющие собой установленные ссылки в приложении Access. С помощью данного семейства в приложении можно динамически устанавливать или удалять ссылки на внешние библиотеки

Reference

Объект

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

Printers

Новое семейство

Содержит объекты Printer, представляющие собой установленные ссылки на все печатающие устройства, доступные в приложении

Printer

Новый объект

Ссылается на конкретное печатающее устройство

DataAccessPages

Семейство

Содержит объекты DataAccessPages, соответствующие открытым в данный момент страницам доступа к данным в базе данных или проекте Access

DataAccessPage


Объект

Ссылается на конкретную страницу доступа к данным Access. Описывает свойства страницы

Screen

Объект

Ссылается на конкретную форму, отчет или элемент управления, который в данный момент имеет фокус

DoCmd

Объект

Позволяет выполнить макрос или встроенную инструкцию Access с помощью процедуры на Visual Basic

VBE

Объект из библиотеки VBIDE

Предоставляет доступ к функциональным средствам редактора Visual Basic для Microsoft Access

DefaultWebOptions

Объект

Предоставляет доступ к атрибутам приложения, используемым в Access по умолчанию при открытии и сохранении Web-страниц

WebOptions

Новый объект

Предоставляет доступ к атрибутам конкретной страницы доступа к данным, используемым в Access при открытии и сохранении Web-страниц. Эти атрибуты имеют более высокий приоритет, чем соответствующие атрибуты приложения. Если установлены атрибуты страницы доступа к данным, то соответствующие атрибуты приложения для работы с Web-страницами игнорируются.

 

Объект

Тип

Описание


 

Если изменяются атрибуты страницы досту-


 

па к данным, автоматически такие же значе-


 

ния получают атрибуты приложения. Поэто-


 

му полезно сохранять текущие атрибуты


 

приложения, чтобы восстанавливать их по-


 

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


 

к данным

DBEngine

Объект из библиотеки DAO

Является объектом самого верхнего уровня в


 

объектной модели DАО. Позволяет использовать объекты доступа к данным в приложении Access

Current Project

Объект

Ссылается на программный проект


 

(представляющий совокупность всех про-


 

граммных модулей, включая стандартные


 

модули и модули классов) текущей базы


 

данных или проекта Microsoft Access. Этот


 

объект содержит семейства объектов


 

AccessObjects, соответствующих реаль-


 

ным объектам базы данных или проекта:


 

Allforms, AllReports, AllMacros,


 

AllModules, AllDataAccessPages.


 

Перечисленные семейства включают в себя


 

все реальные объекты базы данных, незави-


 

симо от того, открыты они или закрыты в


 

данный момент

CurrentData

Объект

Ссылается на объекты, сохраненные прило-


 

жением — источником данных (ядром Jet или


 

SQL-сервером) в текущей базе данных. Со-


 

держит семейства объектов AccessObject:


 

AllTables, AllQueries, AllViews,


 

AllStoredProcedures, All Functions,


 

AllDatabaseDiagrams.


 

Перечисленные семейства включают в себя


 

все реальные объекты базы данных, незави-


 

симо от того, открыты они или закрыты в


 

данный момент

CodeProject

Объект

Ссылается на программный проект кода той


 

базы данных (или проекта Microsoft Access),


 

в которой выполняется (и содержится) код


 

VBA, включающий данную ссылку.


 

Этот объект содержит семейства объектов


 

AccessObjects, соответствующих реаль-


 

ным объектам базы данных или проекта:


 

Allforms, AllReports, AllMacros,


 

AllModules, AllDataAccessPages.

 

Объект

Тип

Описание


 

Перечисленные семейства включают в себя


 

все реальные объекты базы данных, незави-


 

симо от того, открыты они или закрыты в


 

данный момент

CodeData

Объект

Ссылается на объекты, сохраненные прило-


 

жением — источником данных (ядром Jet или


 

SQL-сервером) в той базе данных, в которой


 

выполняется (и содержится) код VBA, вклю-


 

чающий данную ссылку. Содержит семейст-


 

ва объектов AccessObj ect:


 

AllTables, AllQueries, AllViews,


 

AllStoredProcedures, All Functions,


 

AllDatabaseDiagrams.


 

Перечисленные семейства включают в себя


 

все реальные объекты базы данных, незави-


 

симо от того, открыты они или закрыты в


 

данный момент

Controls

Семейство

Содержит объекты Control, представляю-


 

щие все элементы управления в конкретной


 

форме, отчете или секции, вложенные или


 

присоединенные элементы управления. Это


 

семейство является свойством объектов


 

form, Report, Section и Control

Control

Объект

Представляет собой любой конкретный эле-


 

мент управления в форме, отчете или сек-


 

ции, вложенный или присоединенный эле-


 

мент управления. Объект Control может


 

ссылаться на один из объектов, характери-


 

зующих элемент управления определенного


 

типа, такой как:


 

CheckBox, TextBox, ComboBox,


 

CommandButton, CustomControl,


 

BoundObjectFrame, Image, ListBox,


 

ObjectFrame, OptionButton,


 

OptionGroup, Page, Section, Subform,


 

TogleButton

formatConditions

Семейство

Содержит объекты formatCondition и


 

представляет набор форматов по условию


 

для объекта TextBox или ComboBox

forma tCondit ion

Объект

Представляет форматирование по условию,


 

определенное для элемента управления


 

типа поле ввода (объект TextBox) или спи-


 

сок с полем ввода (объект ComboBox)

 

Объект

Тип

Описание

AccessObjectProperties Семейство

Содержит настраиваемые объекты

AccessObj ectProperty, описывающие свойства и однозначно характеризующие конкретный объект AccessObject, CodeData, CodeProject, CurrentData или CurrentProject

AccessObject

Объект

Ссылается на реальный объект Microsoft Access в любом из семейств:

Allforms, AllReports, AllMacros, AllModules, AllDataAccessPages, AllTables, AllQueries, AllViews, AllStoredProcedures, All Functions, AllDatabaseDiagrams.

В зависимости от того, к какому семейству он принадлежит, этот объект представляет собой любой из объектов Access: таблицу (Table), запрос (Query), отчет (Report), форму (From), модуль (Module), макрос (Macro), страницу доступа к данным (Data access page), представление (view), хранимую процедуру (stored procedure) или схему базы данных (Database diagram). Объект AccessObject ссылается на существующий объект базы данных, нельзя создать новый или удалить существующий объект AccessObject

AccessObjectProperty

Объект

Представляет встроенные или определенные пользователем характеристики (свойства) любого объекта AccessObject, CodeData, CodeProject, CurrentData или CurrentProject

В Microsoft Access 2002 появились два новых семейства, содержащих новые объекты: