Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Пакет лекций.doc
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
4.92 Mб
Скачать

3. Модулі

Структурним елементом програми, написаної на мові VBA, є модуль - сукупність оголошень і процедур, об'єднаних в єдине ціле. У ACCESS 97 модулі трьох типів: стандартні модулі, модулі форми і модулі звітів. На відміну від стандартного модуля, який створюється таким же чином, як і будь-який інший об'єкт БД, і може виконувати практично будь-які обчислення, модулі форм і звітів розробляються для обробки подій, пов'язаних з елементами форми або звіту.

Кожен модуль складається з області опису і однієї або декількох процедур. Процедура є послідовністю операторів, які часто називають програмними кодами. Вхідні в модуль процедури об'єднані загальною областю опису. У ній описуються дані і об'єкти, які є загальноприйнятими для процедур модуля. Ієрархія вказаних об'єктів така:

база даних;

модуль;

область опису;

процедура;

код;

оператор.

Процедури діляться на дві категорії: процедури-підпрограми (підпрограми) і процедури-функції (функції).

Процедура-підпрограма активізується при зверненні до неї по імені, унаслідок чого виконується певна послідовність операторів (інструкцій). Підпрограму використовують, наприклад, для завдання властивості форми або заповнення списку значеннями, отриманими в результаті обчислень.

Процедура-функція після виконання повертає деяке значення, яке можна застосовувати в операторах і виразах як змінній. Наприклад, функції можуть повертати значення, використовуване за умовчанням для деякого поля, або обчислювати складний критерій в рамках запиту. У модуль можна включати будь-яку кількість функцій і підпрограм.

4. Процедури

Процедурою називається цілісна структурна одиниця коду на мові VBA. Кожна процедура складається з операторів, в яких застосовуються вбудовані в ACCESS 97 функції, методи і властивості, які призначені для виконання яких-небудь операцій над даними.

Наприклад, до властивості Click кнопки Знайти приведеного раніше прикладу прив'язана наступна процедура:

Private Sub Command6_Click ()

On Error GoTo Err_Command6_Click

Screen. PreviosControl. SetFocus

DoCmd. DoMenuItem acFormBar, acEditMenu, 10,, acMenuVer70

Exit Command6_Click:

Exit Sub

Err_Command6_Click:

MsgBox Err. Descrition

Resume Exit_Command6_Click

End Sub

Для звернення до перерахованих об'єктів, а також для позначення операторів використовуються ключові слова, які записуються з прописної букви (наприклад, Function).

Теоретично кожна процедура може бути викликана з будь-якого модуля, а функція - з таких об'єктів, як форма, запит або звіт. Разом із загальнодоступними процедурами (Public), якими є всі процедури за умовчанням, існують локальні, або особисті процедури (Private), доступні тільки в тому модулі, в якому вони описані.

Для передачі значень із зухвалих операторів в процедури, що викликаються, служать аргументи.

За допомогою аргументів ведеться контроль за виконанням процедури, встановлюється спосіб отримання результату, визначаються параметри обчислень і т.д.

4.1 Створення процедур обробки подій

Розробникам додатків ACCESS, що починають, знадобиться набір процедур для відгуку на різні події, наприклад, внесення змін до поля або клацання на кнопці. Код процедури обробки події прив'язується до події, яка може відбутися при роботі з формою, звітом або елементом управління. Результат виконання процедури-функції зазвичай застосовується:

·як значення за умовчанням для поля таблиці;

·як значення критерію для запитів або фільтрів;

·як вміст поля.

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

1. Відкрити потрібну форму або звіт в режимі конструктора. Якщо необхідно прив'язати процедуру до елементу управління, вибрати цей елемент.

2. Вибрати команду Вигляд - > Властивості, щоб відкрити вікно властивостей форми, звіту або елементу управління.

3. Відкрити вкладку Події.

4. Виконати клацання на рядку властивості тієї події, яка повинна запускати процедуру. Наприклад, якщо процедура повинна запускатися у відповідь на зміну користувачем даних, виконати клацання на властивості Після оновлення.

5. Виконати клацання по кнопці з трьома крапками, щоб відкрити діалогове вікно Будівник.

6. У цьому вікні виконати подвійне клацання мишею на рядку Програми. Відкриється вікно редактора Visual Basic, в якому автоматично з'явиться початковий і кінцевий рядки процедури.

7. Ввести операторів, створюючих код процедури.

Для підвищення легкості для читання коду процедури, що вводиться між обмежувальними операторами, застосовують прийоми структуризації. Один з таких прийомів полягає в тому, що всі оператори процедури записуються з відступом від початку рядка. Для створення відступу можна використовувати клавішу Tab. За умовчанням позиції табуляції встановлені через чотири символи. Відступи утворюються і за допомогою команди Збільшити відступ з меню Правка. В результаті активізації цієї команди рядок зміщується управо на ту кількість символів, яка вказана в полі інтервал табуляції. Команда Зменшити відступ служить для виконання протилежної дії.

За допомогою відступів виділяють вкладені цикли і умовних операторів усередині процедури.

Тексти програм прийнято забезпечувати коментарями. На початку кожного рядка коментаря ставиться апостроф, і такі рядки не впливають на виконання програми, а при синтаксичному аналізі і компіляції - пропускаються. Разом з відступами ACCESS 97 дозволяє використовувати різні шрифти і кольори для виділення фрагментів тексту модуля. Ці параметри встановлюються на вкладці Модуль діалогового вікна Параметри.