Макроси Access: поняття, форми та створення

11 0 Новини високих технологій

У базах даних під керуванням Microsoft Access містяться дані, з якими здійснюють арифметичні і логічні дії. Крім цього, при роботі користувача з БД виконуються операції при настанні певних подій, наприклад, натискання кнопки або зміні значення в поле форми. Яким чином виконуються ці операції, розглянемо у статті.

Поняття макросу

БД Access складаються з об'єктів зберігання та обробки значень у таблицях. Одні з таких об'єктів – макроси Access – програмні одиниці, що використовуються для внесення змін до бази даних або інтерфейсі. Існує два види макросів: подій і даних. Перший вид відповідає за дії в інтерфейсі. Він прив'язаний до елементів форм і самих формах. До такого виду відносяться виконання операцій при натисканні на кнопку, придбання або втрата фокусу, відкриття-закриття форми і т. д.


За цим подіям система здійснює збереження запису або значення поля, застосування фільтра, експорт даних і т. п. Завдяки новому конструктору, створення макросів Access стало нескладною процедурою, доступною початківцям розробникам. Цей конструктор володіє достоїнствами, яких були позбавлені його попередники:
  • система пропонує каталог мікрокоманд з попередньо встановленими діями і інтуїтивно зрозумілими найменуваннями, з яких вибирається необхідне;
  • макрос використовується не один раз, а копіюється з раніше створеного;
  • у командах використовуються умови;
  • гарячі клавіші для спрощення і прискорення роботи;
  • додавання коментарів, які згодом допоможуть зрозуміти роботу програми;
  • групи команд, що виконуються одна за одною.
  • Дії

    Макроси Access: поняття, форми та створення
    Для додавання макросів Access в меню «Створення» вибираємо пункт «Макрос». Система відкриває вікно нового макросу зі списком доступних для додавання команд праворуч. Крім списку макрокоманд, тут ви знайдете макроси, вже доступні в цій БД і функції управління створення процедури для виконання.


    Дії містяться в папках по категоріям виконуваних ними дій. Найменування папок відображають область, до якої належать операції. Це інтерфейсні операції, завдання з передачі даних з БД або в неї, управління об'єктами бази, вікнами програми і елементами об'єктів. Щоб додати команду макрос, її знаходять в каталозі і двічі клацають по найменуванню. Можна просто вибрати потрібну операцію в випадаючому списку макросу або перетягнути її з каталогу в поле макросу.

    Конструктор макросів

    Дії з розробки макросів Access виконують у конструкторі. Команда вибирається з списку і додається у вікно макросу. Тут операція розкривається і запитує введення параметрів. Частина цих параметрів вибирають з розкривних списків, наприклад, якщо операція виконується над об'єктом, у команди присутній аргумент для зазначення цього об'єкта, і поле для введення цього аргументу представляє собою список, що випадає з доступними об'єктами поточної бази. В деякі поля розробник вводить параметр самостійно, наприклад, вказує найменування фільтра для операції відкриття форми.
    У новому конструкторі додана ще одна функція. Вона носить назву IntelliSense і допомагає у введенні виразів в макросах в базі даних Access. Коли користувач вводить значення аргументу, функція підказує йому можливі варіанти, із яких вибирається необхідний.
    Макроси Access: поняття, форми та створення
    Конструктор дозволяє додавати микрокоманды, міняти їх місцями, видаляти, якщо це необхідно. Для зміни порядку виконання команд у верхньому правому куті команди розміщуються кнопки з зеленими стрілками. У першої за порядком операції стрілка вказує тільки вниз, в останній – тільки вгору, для команд в середині списку доступно переміщення і вниз, і вгору. Натискання хрестика видаляє команду з макросу.
    Макроси Access: поняття, форми та створення

    Макроси подій

    Макроси на форму Access додають відразу на елемент управління. При створенні елемента автоматично відкривається майстер, який визначає дії, які виконує макрос у відповідь на подію з боку цього елемента. Яскравий приклад – дії при натисканні на кнопку форми. У майстрі вибираємо категорію «Різне» - «Виконати макрос» і вибираємо заздалегідь створений об'єкт зі списку запропонованих. Таким чином, програма прив'язується до елементу форми і реагує на подію з боку цього елемента.
    Макроси Access: поняття, форми та створення
    До вже завантаженого на форму елементу управління макрос прив'язується у вікні властивостей. На вкладці «Події» позначений список подій, для яких можливо призначити виконання послідовності команд. Для потрібного пункту вибираємо з випадаючого списку макрос, який для виконання.
    Процедура запускається у відповідь на зміну фокуса, оновлення форми, натискання клавіш і кнопок, рух вказівника миші і т. д. Список подій залежить від елемента управління.
    Макроси Access: поняття, форми та створення

    Макроси даних

    У програмі Access 2010 і вище стали доступні макроси даних. Вони викликаються змінами, що відбуваються в елементах якого-небудь об'єкта, або незалежні і викликаються по найменуванню. Завдяки цьому типу макросів Access набуває можливості «просунутих» СУБД (система управління базами даних). Тепер можлива фіксація історії змін рядки таблиці, перевірка параметрів додається запису перед її вставкою – таким чином в СУБД, наприклад, MS SQL Server працюють тригери. При редагуванні окремих полів система може формувати і відправляти повідомлення на електронну пошту користувачів.
    Макроси Access: поняття, форми та створення
    Ці програмні одиниці додаються в режимі таблиці. На вкладці «Робота з таблицями» - «Таблиця» вибирається, коли буде спрацьовувати макрос: до або після зміни/видалення, після вставки. Тут же можна додати іменований макрос, що викликається по найменуванню. Список макрокоманд тут містить операції, які виконуються із даними помилками в значеннях, полями, записами таблиць.

    Умови

    Часто необхідно, щоб макрос працював не кожен раз, а тільки в тому випадку, коли дотримується будь-яка умова. Для завдання цієї умови в макрос Access додається дія «Якщо» з каталогу. Тут прописується умова, при якому буде виконуватися наступна операція. При необхідності додається також команда «Інакше» або цілий додатковий блок «Інакше якщо». У наведеному прикладі ми закриваємо форму «Абітурієнти», якщо поле «Прізвище» порожнє. Якщо ж це не так, ми зберігаємо запис і тільки після цього закриваємо форму.
    Макроси Access: поняття, форми та створення
    Завдяки новому конструктора макросів Access, починаючи з версії 2010 розробник може гнучко налаштувати систему і забезпечити більшу безпеку даних у таблицях. Бажаємо вам удачі в освоєнні нових можливостей MS Access.