Лекція 9. "Створення і застосування макросів в СУБД Access"
Лекція 9. Тема: "Створення і застосування макросів в СУБД Access".
Ізольовані макроси.
Макрос – це набір стандартних команд, які виконуються в заданій послідовності і які викликаються на виконання шляхом запуску на виконання імені макросу.
Існує два види макросів – 1) ізольовані макроси, 2) впроваджені (внедренные) макроси. Ізольований макрос зберігається у БД як окремий об'єкт БД на ряду із таблицями, запитами, формами, звітами. Впроваджений макрос є впровадженим безпосередньо у події об'єкта, наприклад на подію "Натискання кнопки".
Для прикладу створимо ізольований макрос, який у БД "Зарплата" буде знаходити професію за певним кодом, при цьому код будемо задавати з клавіатури. Відкриємо БД "Зарплата. Відкриємо форму "Головна" у режимі конструктору. На формі розмістимо Квадрат, а у середину квадрату розмістимо Поле для занесення даних. Викличемо властивості цього поля і на вкладенці "Другие" – Имя – ПолеПошук. Потім на форму ставимо кнопку і натиснувши "Отмена" лише задамо надпис "Пошук за кодом професії". Ctrl+S – дозволить зберегти внесені зміни.
Переходимо на вкладку "Создание" – Макрос – Відкриється конструктор макросів. Напишемо таку послідовність команд:
- Если Not IsNull([ПолеПошук]) то
КЭлементуУправления
Имя элемента Код_проф
Конец блока "Если"
- Найти Запись
Образец поиска =ПолеПошук
Совпадение Поле целиком
С учетом регистра Нет
Область поиска Все
С учетом формата поля Нет
Только в текущем поле Да
Первое вхождение Да (тобто, пошук починаэться з першого запису)
Тепер розмістемо макрокоманду Найти Запись в блок Если, для чого натиснемо праворуч зелену стрілку вгору.
Збережемо через Ctrl+S і надамо макросу ім'я "Пошук_коду_проф"
- Если Not IsNull([ПолеПошук]) то
КЭлементуУправления
Имя элемента Код_проф
- Найти Запись
Образец поиска =ПолеПошук
Совпадение Поле целиком
С учетом регистра Нет
Область поиска Все
С учетом формата поля Нет
Только в текущем поле Да
Первое вхождение Да
– Если [ПолеПошук]<> [Код_проф] то (реакція, якщо коду проф. не існує)
– Окно сообщения
Сообщение Такого коду професыъ не знайдено
Сигнал Да
Тип Информационное
Заголовок Данных нет
Конец блока "Если"
Конец блока "Если"
Тепер зберігаємо макрос і у властивостях кнопки, що встановили на формі, обираємо: вкладка "Событие" – Нажатие кнопки – ім'я створеного макросу.
Також, макроси дозволяють зробити дії, які не виконуються за допомогою зміни властивостей об’єктів в їх звичайному вигляді. Так, запит на вибір інформації в своєму звичайному вигляді, дозволяє не тільки переглядати інформацію, но і вносити до неї зміни. Використання макросу "ОткрытьЗапрос" дозволяє заборонити зміну даних. Для цього слід створити макрос для відкриття запиту і у параметрі макрокоманди "Режим данных" замість стандартного значення "Изменение" задати значення "Только чтение". Наприклад, запит на перегляд розрахунку заробітної плати обов'язково слід відкривати у режимі "Только чтение". Наприклад:
- ОткрытьЗапрос
Имя запроса Зарплата
Режим Таблица
Режим данных Только чтение
Впроваджені (внедренные) макроси.
Впроваджений макрос – це такий макрос, який прив'язаний до певної події об'єкту бази даних. Впроваджений макрос не відображається серед списку стандартних об'єктів бази даних