Файл: Освой самостоятельно программирование для MS Access 2002 за 24 часа [П.Киммел].pdf

ВУЗ: Не указан

Категория: Не указан

Дисциплина: Не указана

Добавлен: 21.10.2020

Просмотров: 7890

Скачиваний: 25

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.
background image

После установки надстройки желательно протестировать ее в реальных условиях. Об-

ращайтесь к процедурам модуля Logutilities во всех случаях, когда посчитаете необхо-
димым. Подобные вызовы естественно размещать внутри блоков обработчиков ошибок —

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

 (Err) сразу после строк, содержащих обычные инструкции обработки

ошибок. Пример использования кода приведен в листинге 23.4. Чтобы просмотреть табли-

цу LOG, выберите соответствующий элемент меню

 Надстройки.

Еще одно дополнительное замечание. Средства ведения протокола ошибок легко вклю-

чать и отключать с помощью условных директив компилятора, добавив модуль с двумя

процедурами, аналогичными

 и WriteErrorEntry. Подробнее о директивах

компилятора см. главу "18-й час. Обработка ошибок во время выполнения программы".

Подведем итоги

Вам абсолютно не помешает еще раз повторить все действия, которые необходимо

выполнить в процессе создания надстройки Access. Сказанное далее, справедливо в от-

ношении любой надстройки, оформленной в виде базы данных. Не забывайте о двух

моментах: чтобы воспользоваться возможностями повторного применения кода, вовсе

не обязательно создавать надстройки; для построения надстроек в формате объектов

СОМ следует прибегнуть к более мощным средствам программирования — например,

Visual Basic. (Visual Basic — это самостоятельный язык, обладающий собственной интег-

рированной средой; он распространяется в составе Microsoft Visual Studio. Завершив

изучение нашей книги, вы наверняка сможете изучить и Visual Basic.)

1. Создайте базу данных с расширением имени файла  MDA.
2. Постройте в базе данных надстройки все необходимые модули, классы, формы и

другие объекты.

3. Создайте таблицу

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

функции, служащей точкой входа надстройки. (Для построения таблицы вы можете

регулярно пользоваться командой листинга 23.7 и содержимым табл. 23.1. Вероят-

но, имеет смысл всегда называть процедуру, используемую в качестве точки входа

надстройки, одним и тем же именем.)

4. Перед установкой надстройки тщательно ее протестируйте.

5. Инсталлируйте надстройку средствами диалогового окна Диспетчер надстроек.

Перечисленные выше моменты на самом деле более полезны, чем может показать-

ся на первый взгляд. Надстройки — одно из самых мощных средств автоматизации

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

Microsoft. И наконец, последнее — если позволяет бюджет, покупайте готовые над-

стройки Access, чтобы избежать необходимости самостоятельного программирования.

Резюме

Настройки Access предлагают в ваше распоряжение мощные средства управления

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

мирования, вы сможете настроить (или

 надстроить?)

 Access самым непредвиденным

образом — разумеется, если в этом есть серьезный практический смысл.

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

ки надстроек в среде Access. Надстройки — полноценный товар и удобное средство

обмена готовыми решениями.

Не забудьте прочесть разделы "Вопросы и ответы" и "Задания", завершающие эту

главу.

23-й час. Надстройки Access 425


background image

Вопросы и ответы

Вопрос. Возможно ли одновременное использование средств DAO и ADO в пределах

одного приложения?

Ответ.

 Да. Воспринимая

 и ADO как обычные классы (именно так и следует к

ним относиться), вы, разумеется, можете создавать и их объекты. Единственная по-

тенциальная опасность заключается в том, что названия некоторых атрибутов этих

классов совпадают.

Вопрос. Можно ли воспользоваться классом из состава

Ответ.

 Да, но не напрямую. Потребуется создать в модуле надстройки дополни-

тельную функцию, возвращающую объект класса. Определение переменной такого

класса в модуле, не принадлежащем надстройке, не допускается.

Вопрос. Удаляется ли исходный файл

 после установки надстройки в папку

Ответ.

 Нет. У вас остается две копии базы данных — не забывайте о необходимо-

сти их синхронизации.

Вопрос. Как поступить, если надстройка содержит процедуру или функцию с таким же

именем, какое используется в рабочем модуле приложения?

Ответ.

 Перед именем процедуры из состава надстройки введите префикс в виде

названия надстройки и символа точки, например

 FileExists.

Задания

Ниже приведены тестовые задания и упражнения, которые помогут вам самостоя-

тельно проверить уровень освоения материала, изложенного в этой главе. Ответы на

вопросы вы найдете в приложении.

Тесты

1. С какой целью файлы баз данных надстроек Access обозначаются расширением

имени

2. Как называется таблица, которую необходимо создать в базе данных надстройки

для обеспечения возможности ее регистрации?

3. Методы Property могут

 созданы в обычном, не "классовом", модуле. Верно

ли это?

4. Использование

 Public и Private допустимо в пределах обычного

модуля. Верно ли это?

5. Что означает константа IACCDIR?

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

LOG и в случае необходимости вызывает процедуру CreateTable.

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

 и вызовите проце-

дуру WriteEntry. Будет ли в результате этого обращения построена таблица LOG?

426 Часть VIII. Объектно-ориентированное программирование в Access


background image

24-й час

информацией

о контактах Outlook

Outlook, приложение из состава Microsoft Office XP, с точки зрения особенностей по-

строения относится к числу

 серверов OLE Automation

 (или просто

 серверов автоматиза-

ции).

 Это означает, что программа Outlook способна выполняться самостоятельно и вы-

зываться из среды других приложений. Outlook служит для управления самыми разнооб-
разными данными — сообщениями электронной почты, сведениями о контактах, распи-
саниями, задачами и т.п. На этом занятии будут рассмотрены способы создания кода на
языке

 в среде Access для использования Outlook в качестве программного агента,

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

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

информацией о контактах с помощью средств Outlook. Это наглядный пример опера-
ций, для выполнения которых, по большому счету, и предназначен пакет приложений
Office XP — мощный комплекс гибко взаимодействующих программ, позволяющих
автоматизировать решение множества офисных задач.

Навыки, полученные вами на прошлых занятиях, непременно пригодятся. К на-

стоящему моменту вы уже достаточно хорошо осведомлены, например, о способах по-
строения и использования классов и их объектов. Создавая экземпляр Outlook в среде
приложения Access, мы будем "общаться" с объектами самым "тесным образом".

Основные темы занятия.

• Объектная модель Outlook.
• Применение папок Outlook.

• Просмотр, изменение и поиск данных в папках Outlook.
• Использование почтовых средств Outlook в прикладных программах.


background image

Знакомство с Outlook 2002

Microsoft Outlook 2002 — это стандартное Windows-приложение, которое поддер-

живает функции сервера OLE Automation. Программа Outlook была создана, чтобы

помочь пользователю справиться с лавиной информации — почтовыми сообщениями,

сведениями о контактах, расписаниями и прочими данными, а в конечном итоге -
сберечь драгоценное время.

Приложение Outlook просто незаменимо в управлении телефонными номерами и

адресами электронной почты. Обращайтесь к помощи Outlook, если необходимо со-

ставить расписание заданий, которые предстоит упорядочить во времени и завершить

в срок. Если вы хотели бы обмениваться почтовыми сообщениями с коллегами по ра-

боте или внешними абонентами, Outlook и тут придет вам на помощь. Функции веде-

ния календаря "поучаствуют" в планировании встреч, а в разделе заметок вы сможете

быстро завязать "узелки" на память.

Новый термин

Контроллер автоматизации

 — это приложение, которое использует или

управляет серверами автоматизации, например Outlook.

Нет ничего удивительного в том, что многим приложениям требуются одни и те

же функции. Но вовсе не обязательно всякий раз создавать их с нуля — вероятно,

просто глупо пытаться заново воспроизвести все возможности, предлагаемые тем же

Outlook. Если в программе для Access, над которой вы трудитесь, понадобятся те или

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

тесь копией Outlook, Воспринимайте Outlook как еще один объект, код которого дос-

тупен для повторного использования. Ниже рассказывается, как этого добиться.

Объектная модель Outlook

Пытаясь представить Outlook в виде объекта, средства которого можно применить

в собственном приложении, помните, что это не совсем обычный объект, как, ска-

жем, переменная Collection. Outlook

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

из множества других объектов, каждый из которых, в свою очередь, содержит свойст-

ва, методы... и вложенные объекты. Впрочем, все это отнюдь не означает, что "класс"

Outlook принципиально неуправляем или непостижим. Немного терпения, чуть-чуть

времени на знакомство с документацией — и работа закипит.

Итак, рассмотрим объектную модель, лежащую в основе Outlook. (Напомним, что

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

внешнего представления, доступного пользователям.)

1. Запустите на выполнение Microsoft Outlook 2002.

2. Выберите в строке меню команду

 Редактор Visual Basic

 Basic Editor).

 здесь доступен тот же самый, хорошо

знакомый редактор Visual Basic. Если вы все еще не удосужились его инсталлиро-

вать — мы допускаем и такую, почти невероятную, мысль, — сделайте это хотя бы

сейчас. Программа инсталляции Office XP по умолчанию устанавливает далеко не

все компоненты пакета.)

3. Перейдя в окно приложения Microsoft Visual Basic, нажмите клавишу <F1>.
4. В окне запроса Помощника введите ключевую фразу поиска

 Microsoft Outlook

Objects

 и щелкните на кнопке Найти (Search).

428 Часть VIII.

 программирование в Access


background image

 ?

Если Помощник Office

 находится на экране, его можно

скрыть с помощью команды контекстного меню. Щелкните на
Помощнике правой кнопкой мыши и в контекстном меню выберите
команду Параметры (Options). На вкладке Параметры снимите флажок

Использовать помощника (Use the Office Assistant). Помощник будет
скрыть, но вы по-прежнему можете обращаться к мастеру вопросов.
(Более подробную информацию о Помощнике можно получить по

адресу

Кроме того, примите во внимание, что ссылка на объектную модель

может не работать корректно. Если в строку поиска справочной
системы Visual Basic ввести Microsoft Outlook Objects, раздел справки
найден не будет. И только заменив Outlook на Outloo, вы получите
нужный результат.

В окне приложения оперативной справочной системы Microsoft Visual Basic откро-

ется страница указанной темы, отображающая графическую диаграмму иерархии
классов Outlook. Щелчок на любом из элементов диафаммы вызывает переход к соот-
ветствующей странице справки. Легко заметить (труднее

 что "класс" Outlook

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

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

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

 экземпляра Outlook

В основе иерархии объектов Outlook лежит объект класса Application. Объект с

тем же именем образует верхний уровень интерфейса всех других компонентов Mi-
crosoft Office XP, поддерживающих архитектуру серверов OLE Automation. Экземпляр

Outlook строится совершенно так же, как и объекты всех других классов. Следуя при-
веденной ниже инструкции и используя код листинга

 вы сможете создать объект

Outlook в среде прикладной

 Access и зафузить приложение Помощник

Microsoft Office.

1. Зафузите Access и создайте базу данных.

2. В окне База данных (Database) выберите элемент Модули (Modules) списка Объекты

(Objects).

3. Щелкните на кнопке Создать (New) панели инструментов.
4. Введите код, приведенный в листинге

 и выполните его.

Листинг 24.1. Демонстрационная процедура для создания объекта Outlook и запуска

приложения Помощник Microsoft Office

1: Sub

 )

2: Const ClippitFile =

 Dim Outlook As Object

4: Set Outlook =

 )

5:

 = ClippitFile

 = True

7:

 = 22

8 : End Sub

24-й час. Управление информацией о контактах Outlook

429