Программирование >>  Проектирование интерфейса пользователя 

1 ... 131 132 133 [ 134 ] 135 136 137 ... 153


3 лкните на кнопке Добавить (Add New) диалогового окна Диспетчер надстроек, с помощью средств навигации диалогового окна Открытие надстройки (Open) проследуйте к файлу Log.mda, выберите его и щелкните на кнопке Открыть (Open).

4. Убедитесь, что в список Доступные надстройки (Available Add-Ins) окна Диспетчер надстроек добавлена запись с наименованием надстройки и предшествующим символом х. Кроме того, кнопка Установить (Install) должна изменить свое название на Удалить (UninstaU). Щелкните на кнопке Закрыть.

Если после установки надстройки Log.mda возникли проблемы, необходимо ее деинсталлировать, закрыть Access и удалить копию базы данных Log.mda из папки надстроек. По умолчанию это папка ments and Settings\имя пoльзoвaтeля\Application Data\Micro-

где необходимо заменить

действительным именем пользователя.

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

Чтобы проверить корректность установки надстройки, протестируйте ее. Откройте меню СервисНадстройки - в нем должен появиться новый элемент (в нашем

случае - Log), который следует выбрать. Если надстройка Log установлена правильно, вы получите сообщение об ошибке подобного содержания: Приложению Microsoft Access не удается найти объект LOG. Пе расстраивайтесь, это нормально - надстройка работает и пытается открыть для просмотра таблицу LOG, но,

поскольку никакое приложение еще не тестировалось (и не провоцировало ошибок),

таблица LOG в базе данных еще не создана.

Модификация и удаление надстройки

Удалить надстройку из среды Access (как и выполнить любое другое действие, направленное на разрушение, а не созидание) очень просто. Достаточно с помощью команды Сервис=Надстройки=>Диспетчер надстроек открыть диалоговое окно Диспетчер

надстроек, выбрать нужную (или, точнее, уже ненужную) надстройку и щелкнуть на

кнопке Удалить. Чтобы внести в настройку какие-либо изменения, первым делом

следует выгрузить все экземпляры Access и физически удалить соответствующий файл

из папки Addlns. Завершив модификапию надстройки, повторите все описанные выше действия по ее установке.

Теперь, когда у вас есть удобное орудие отлова ошибок, пора отправиться на

охоту, т.е. попробовать протестировать инструмент на практике.

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

Каждую собственную базу данных вы можете снабдить средством ведения протокола

ошибок, которое окажется в равной степени полезным и во время разработки приложений, и в период их эксплуатации. Часто происходит так, что пользователи, мельком взглянув на окно сообщения об ошибке и не утруждая себя излишними размышлениями, щелкают на кнопке ОК и пытаются продолжить работу. В результате спохватываются только тогда, когда программы терпят полное фиаско. Обладая инструментом ведения журнала ошибок, вы всегда, даже спустя некоторое время, сможете восстановить картину происшедшего, выявить причины сбоев и принять соответствующие меры.



После установки надстройки желательно протестировать ее в реальных условиях. Обращайтесь к процедурам модуля LogUtilities во всех случаях, когда посчитаете необходимым. Подобные вызовы естественно размещать внутри блоков обработчиков ошибок - здесь практически всегда в вашем распоряжении имеется объект Err, обладающий исчерпывающей информацией о последней ошибке. Достаточно вставить строку кода Call (Err) сразу после строк, содержащих обычные инструкции обработки ошибок. Пример использования кода приведен в листинге 23.4. Чтобы просмотреть таблицу LOG, выберите соответствуюший элемент меню Сервис=>Надстройки.

Еще одно дополнительное замечание. Средства ведения протокола ошибок легко включать и отключать с помощью условных директив компилятора, добавив модуль с двумя процедурами, аналогичными WriteEntry и WriteErrorEntry. Подробнее о директивах компилятора см. главу 18-й час. Обработка ошибок во время выполнения программы .

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

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

выполнить в процессе создания надстройки Access. Сказанное далее, справедливо в отношении любой надстройки, оформленной в виде базы данн1х. Не забывайте о двух моментах: чтобы воспользоваться возможностями повторного применения кода, вовсе не обязательно создавать надстройки; для построения надстроек в формате объектов СОМ следует прибегнуть к более мощным средствам программирования - например, Visual Basic. (Visual Basic - это самостоятельный язык, обладающий собственной интегрированной средой; он распространяется в составе Microsoft Visual Studio. Завершив изучение нашей книги, вы наверняка сможете изучить и Visual Basic.) Итак...

1. Создайте базу данн1х с расширением имени файла . MDA.

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

3. Создайте таблицу USysReglnfo и не забудьте указать в ней имя процедуры или функции, служащей точкой входа надстройки. (Для построения таблицы вы можете регулярно пользоваться командой листинга 23.7 и содержимым табл. 23.1. Вероятно, имеет смысл всегда называть процедуру, используемую в качестве точки входа

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

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

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

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

Резюме

Настройки Access предлагают в ваше распоряжение мощные средства управления всеми компонентами интегрированной среды системы. Применив навыки программирования, вы сможете настроить (или надстроить?) Access самым непредвиденным образом - разумеется, если в этом есть серьезный практический смысл.

В ходе занятия вы ознакомились со способами создания, тестирования и установки надстроек в среде Access. Надстройки - полноценный товар и удобное средство обмена готовыми решениями.

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

главу.



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

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

Ответ. Да. Воспринимая ОАО и ADO как обычные классы (именно так и следует к ним относиться), вы, разумеется, можете создавать и их объекты. Единственная потенциальная опасность заключается в том, что названия некоторых атрибутов этих классов совпадают.

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

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

Вонрос. Удаляется ли исходный файл .MDA после установки надстройки в нанку Addlns?

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

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

Ответ. Перед именем процедуры из состава надстройки введите префикс в виде названия надстройки и символа точки, например Log. FileExists.

Задания

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

Тесты

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

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

3. Методы Property могут быть созданы в обычном, не классовом , модуле. Верно

ли это?

4. Использование квалификаторов Public и Private допустимо в пределах обычного модуля. Верно ли это?

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

Упражнения

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

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

2. Приведите выражение для тестирования процедуры

3. Создайте пустую базу данных, определите ссылку на базу и вызовите процедуру WriteEntry. Будет ли в результате этого обращения построена таблица LOG?



1 ... 131 132 133 [ 134 ] 135 136 137 ... 153

© 2006 - 2024 pmbk.ru. Генерация страницы: 0
При копировании материалов приветствуются ссылки.
Яндекс.Метрика