на форма
Головна форма формується на Основі запиту поданого на рис. 4.1.2. У ньом реалізовано поиск за завданнями до заголовку форми крітеріямі. Если Сменить у віпадаючому списку книгу (звертаючись потрібну зі списку) чі натіснуті кнопку поиск (Попередньо увівші прізвище шуканого читача) відбувається оновлення форми помощью ее методу - Requery (дів. Додаток А).
Малюнок 4.1.2.- Конструктор для запиту qvr_main
Для зручності перегляду прізвіщ, імен та по-батькові чітачів у запіті прописали ПІБ для чітачів:
ПІБ читача=([S_name] amp; amp; Left ([Name]; 1) amp; laquo ;. amp; Left ([L_name]; 1) amp; . )
Кож для Функціонування фільтрів в головній форме булу прописана дія для поиска книг та ПІБ читача:
Книга=(Like [Forms]! [frm_main1]! [cmb_knh] amp; * )
ПІБ читача=(Like [Forms]! [frm_main1]! [txt_prisv] amp; * )
Підсумки в форме підбіваються помощью вбудований функцій Count та Sum:
Кількість запісів=Count ([id_issue]) та Ціна всех книг== Sum ([Book_price]).
Копка відалення после підтвердження Виконує запит на відалення (рис. 4.1.1.3.) с помощью методу openQuery про єкту DoCMD.
Рис. 4.1.3.- Запитів на відалення
При натісненні кнопок детальна інформація та доповніті відкрівається форма frm_redag, а в якості вхідного параметру (openArgs) в Першому випадка передається код читача, в іншому текстовому мітка new .
. 2 Форма детальної информации
Форма детальної информации (рис. 4.2.1) может відкріватіся в 3-х режимах:
. Если openArgs не задано (Null) - форма відкрівається на Першому запісі, а такоже користувач має можлівість переходу по записах помощью навігаційніх кнопок;
. Если openArgs має числове значення - форма відкрівається на заданому у вхідному параметрі запісі, а користувач НЕ має возможности переходу по записах;
. Если openArgs має значення new - Форма відкрівається в режімі ДОПОВНЕННЯ, тобто користувач дається доступ до полів (властівість Locked пріймає значення false).
Рис. 4.2.1.- Форма детальна інформація в режімі автономної роботи
Форма детальна інформація складається з двох вкладок - Книги, до якої входять поля Код відачі, Код книги (поле зі списком), Назва, Автор, Жанр, Видавництво, Мова видання, Ціна, Дата видачі, Дата повернення,
та читачі з полями Читацький квиток (поле зі списком), Прізвище, Ім'я, По-батькові, домашня адреса, Номер телефону, Дата народження.
Для Заповнення форми вікорістовується Динамічний про єкт - recordset, в Який помощью Попередньо розробленої процедури open_recordset (дів. додаток Г) поміщуються дані з необхідніх таблиці.
Кнопки навігації реалізовані помощью методів про єкту recordset: moveNext та MovePrevious, з попередня перевіркою значень властівостей EOF та BOF відповідно.
После натіснення кнопки Редагуваті користувач отрімує можлівість вносіті Зміни до полів форми: Код книги, Дата видачі и Дата повернення (властівість Locked пріймає значення false), кнопки Зберегти та Відмінити актівізуються (Enabled=true), а кнопки навігації (если смороду активні) та сама кнопка Редагуваті будут неактивних (Enabled=false).
Кнопка Зберегти, по-перше, перевіряє відповідність введених користувачем даних завданні ограниченной, по-одному, перевіряє в якому режімі завантажено форма, по-Третє, в залежності від режиму зберігає дані, по-четверте, змінює властівость Enabled кнопок, відповідно до логіки додатка, по-четверте, блокує доступ користувача до полів (Locked=true).
Кнопка Відмінити блокує Доступні корістувачеві поля, змінює властівість Enabled кнопок, відповідно до логіки додатка, закриває Дану форму без Збереження даних, если вона Відкрита з головної форми, або завантажує в форму Початкові дані, если форма Відкрита автономно.
Кнопка Вихід Забезпечує закриття форми, если вона Відкрита автономно, у випадка ж Відкриття форми у режімі детального перегляду або ДОПОВНЕННЯ, процедуру закриття забезпечують кнопки Відмінити/Зберегти.
Для Зменшення ОБСЯГИ програмного коду, Було розроблено процедури, для Деяк повторювання операцій:
· loadData () - для Заповнення форми З про єкту recordset;
· SaveData () - для запису в recordset даних з полів форми;
· SetLocked (value As Boolean) - для Надан...