Access. Программирование на VBA

Использование условной компиляции


Работа с единственной версией приложения представляется гораздо более удобным подходом, чем создание нескольких версий. Предположим, имеется приложение, которое используется несколькими отделами. Большая часть приложения является общей и может использоваться всеми отделами, но неболь­шие блоки кода должны быть приспособлены под нужды каждого отдела. Если принято решение создать несколько версий, обновление и поддержка всех версий может оказаться непосильной задачей. Каждый новый блок общего кода необходимо добавлять во все версии. Кроме того, большое количество версий усложняет работу с приложением и затрудняет его распространение.

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

В качестве примера допустим, что в Лос-Анджелесском отделении предприятия должна выполняться некоторая часть кода, которая не выполняется ни в одном из других отделений. Во-первых, необходимо выбрать константу для данного отделения, например, LA.

Константу нужно ввести как аргумент условной компиляции для приложения. В редакторе Visual Basic в меню необходимо выбрать команду Tools | Apllication's Properties (Сервис | Свойства приложения). Откроется диалоговое окно Project Properties (Свой­ства проекта). Нужно выбрать вкладку General (Общие). В поле Conditional Compilation Arguments (Аргу­менты условной компиляции) необходимо ввести LA = -I. Данное выражение позволяет установить константу равной True.

Теперь можно ввести код, который выполняется только для версии LA приложения. Для этого необ­ходимо записать код в конструктив условной компиляции. Например:

#If LA Than

' Данный код выполнятся в IA-версии приложения.

#End If

Кроме того, условная компиляция может оказаться полезным средством отладки. Если необходимо часто комментировать разделы кода, нужно установить аргумент условной компиляции fComment = -1. Данный флаг комментария теперь можно использовать в конструктиве условной компиляции для комментирова­ния разделов кода:

#If fComment Then

' Выполняется данный код.

#End If



Содержание раздела