Проектування бази даних Access "Бібліотека"
Визначення необхідних даних для створення бази даних "Бібліотека", групування їх по таблицях. Передбачення ключових полів, зв’язків між таблицями Access. Створення запитів для функціонування фільтрів у головній формі, а також інтерфейсу користувача.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | курсовая работа |
Язык | украинский |
Дата добавления | 22.01.2015 |
Размер файла | 2,5 M |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Размещено на http://www.allbest.ru/
План
- Вступ
- 1. Постановка задачі
- 2.Структура бази даних
- 3. Зміст таблиць
- 4. Опис та представлення створеного інтерфейсу користувача
- 4.1 Головна форма
- 4.2 Форма детальної інформації
- 4.3 Формування звітів
- Висновки
- Список використаної літератури
- Додатки
Вступ
база бібліотека access фільтр
База даних - це найважливіша складова частина інформаційних систем (ІС), призначених для зберігання, підтримання в актуальному стані даних великого обсягу, необхідні в різних додатках багатьох користувачів. Тому найважливішим напрямком розвитку баз даних є багатокористувацька технологія.
База даних є організованою сукупністю, на машинному носії, взаємозв'язаних даних і містить відомості про різних предметних областях - реальних об'єктах, процесах, події або явища. Реляційна база даних являє собою безліч взаємопов'язаних двовимірних таблиць - реляційних таблиць, в кожній з яких містяться відомості про одну сутності.
Для створення, запровадження та здійснення можливості колективного користування баз даних використовуються програмні засоби, звані системами управління база даних - СУБД.
СУБД Microsoft Access є системою управління реляційною базою даних, що включає всі необхідні бази даних у локальній мережі з файловим сервером або створення додатку користувача. У СУБД можна створювати більшість програм, не написавши не однієї єдиної програми. СУБД Microsoft AccessMicrosoft Access дозволяє керувати всіма відомостями з одного файлу бази даних (БД).
СКБД Access 2003 - це компонент Microsoft Office 2003, призначений для створення реляційних баз даних. Access 2003 порівняно з попередніми версіями має підвищену продуктивність; більш потужні засоби VBA; більшу кількість шаблонів баз даних; нові макрокоманди; можливість під'єднання до Internet і локальної мережі.
1. Постановка задачі
1. Розробити у середовищі СКБД MS ACCESS базу даних (БД) для вирішення заданої економічної задачі. При вирішенні задачі необхідно виконати наступні дії засобами MS ACCESS:
· проаналізувати предметну область згідно умови задачі, визначити цілі проектування БД, розробити інформаційно-логічну модель предметної області (розподілити дані по таблицях, визначити поля та типи даних)
· створити структури таблиць БД, визначити первинні та зовнішні ключі для кожної із таблиць з метою подальшого встановлення зв'язків між таблицями;
· виконати заповнення таблиць БД інформацією;
· зв'язати таблиці за допомогою зовнішніх ключів (один до одного, один до багатьох);
· запроектувати та створити необхідні запити для вирішення поставленої задачі
2. Розробити інтерфейс користувача (АРМ), використовуючи засоби вбудованої мови VBA:
· створити головну форму додатку для перегляду даних. Встановити властивості даної форми. Передбачити розташування елементів керування "випадаючий список" та "текстове поле" для вибірки даних по двом параметрам з використанням запиту та застосуванням методу 'Requery'. Передбачити відображення основної інформації БД. Створити процедури обробки подій використовуючи VBA. Передбачити розрахунок підсумків;
· Створити форму редагування/додавання даних до головної таблиці БД. Встановити властивості даної форми. Передбачити розташування елементів керування випадаючі списки(не менше двох), текстові поля, кнопки керування("РЕДАГУВАТИ", "ЗБЕРЕГТИ", "ВІДМІНИТИ"). Передбачити розташування об'єктів на формі поблоково, в залежності від
· інформації , яка буде виводитись. Створити головний модуль додатку, в якому описати змінні типу Recordset, та загальну процедуру відкриття
· об'єктів типу Recordset. Створити процедури: відкриття форми(Open), зміни значень випадаючих списків(AfterUpdate), кнопок (Click). Процедури заповнення тестових полів та списків на формі створити як окремі процедури. Передбачити відкриття даної форми у двох режимах: редагування та доповнення, для цього додатково на головній формі ("frm_main") в області "Примітки" розташувати кнопку "ДОПОВНИТИ" та створити для неї процедуру. При збережені даних, передбачити перевірку правильності заповнення основних полів на формі;
· створити необхідні звіти для виведення(не менше двох звітів).
Умова задачі:
В даній роботі необхідно спроектувати і реалізувати в MS Access базу даних "Бібліотека", яка повинна зберігати наступну інформацію:
1. Прізвище, ім'я, по батькові викладача.
2. Домашня адреса читача.
3. Телефон читача.
4. Дата народження читача.
5. Номер читацького квитка.
6. Автор книги, яку взяв читач.
7. Назва книги.
8. Дата видачі книги.
9. Дата повернення книги.
10. Ціна книги.
2. Структура бази даних
База даних "Бібліотека" складається із трьох таблиць.
В даній задачі головною обліковою таблицею є "tabl_Oblik"("Таблиця обліку"), а довідниками -"tabl_Book"("Таблиця книг"), "tabl_Reader"("Таблиця читачів") . Зв'язок між таблицями встановлюється за допомогою ключів "id_issue", "id_Book", "id_reader", які в довідниках є первинними, а в головній таблиці - зовнішніми. Схема БД показана на рисунку 2.1.
Рис. 2.1. - Схема даних БД
3. Зміст таблиць
База даних "Бібліотека" складається з наступних таблиць:
1) "tabl_Oblik"("Таблиця обліку");
2) "tabl_Book"("Таблиця книг");
3) "tabl_Reader"("Таблиця читачів");
Кожну таблицю створювали за допомогою Конструктора таблиць. У ньому задали характеристики полів, що складають записи бази, тобто ввели специфікацію запису (таблиця 3.1.). Кожному полю задали тип даних, що визначає вид інформації, яка буде зберігатися в даному полі, розмір полів, псевдоніми та вибрали ключові поля для позначення первинних ключів.
Таблиці зв'язані за допомогою майстра підстановки: в полі id_issue таблиці tabl_Oblik зберігається код видачі-повернення книги , в полі id_Book цієї ж таблиці зберігається унікальний код книги, в полі id_reader- номер читацького квитка. Схема даних подана в таблиці 1.
Таблиця 3.1.
Опис полів таблиць
№ |
Таблиця |
Поля |
Типи даних |
Довжина |
Первинний ключ |
Допустимість Null |
Псевдонім |
|
1 |
tabl_Oblik |
id_issue |
лічильник |
довге ціле |
так |
ні |
Код видачі |
|
id_Book |
числовий |
довге ціле |
ні |
Код книги |
||||
id_reader |
числовий |
довге ціле |
Читацький квиток |
|||||
date_issue |
дата/час |
короткий формат дати |
Дата видачі |
|||||
date_return |
дата/час |
короткий формат дати |
Дата повернення |
|||||
2 |
tabl_Book |
id_Book |
лічильник |
довге ціле |
так |
ні |
Код книги |
|
Author |
текстовий |
50 |
ні |
Автор |
||||
Title_B |
текстовий |
50 |
Назва |
|||||
Genre_B |
текстовий |
50 |
Жанр |
|||||
Place_P |
текстовий |
50 |
Місце видання |
|||||
Publishing_house |
текстовий |
50 |
Видавництво |
|||||
Year_edition |
числовий |
довге ціле |
Рік видання |
|||||
Language_P |
текстовий |
50 |
Мова видання |
|||||
Num_pages |
числовий |
довге ціле |
Кількість сторінок |
|||||
Book_price |
грошовий |
основний |
Ціна |
|||||
Number_copies |
числовий |
довге ціле |
Кількість копій |
|||||
3 |
tabl_Reader |
id_reader |
числовий |
довге ціле |
так |
ні |
Читацький квиток |
|
S_name |
текстовий |
30 |
ні |
Прізвище |
||||
Name |
текстовий |
30 |
Ім'я |
|||||
L_name |
текстовий |
30 |
По-батькові |
|||||
address |
поле МЕМО |
Домашня адреса |
||||||
telefon |
числовий |
довге ціле |
Телефон |
|||||
date_birth |
дата/час |
короткий формат дати |
Дата народження |
Таблиця "tabl_Book"
Рис. 3.1. - Таблиця "Книги" в режимі конструктора
Рис. 3.2 - Перегляд таблиці "Книги"
Таблиця "tabl_Reader"
Рис. 3.3. - Таблиця "Читачі" в режимі конструктора
Рис. 3.4. - Перегляд таблиці "Читачі"
Голвна таблиця "tabl_Oblik"
Рис. 3.5. - Таблиця "Облік" в режимі конструктора
Рис. 3.6. - Перегляд головної таблиці "Облік"
4. Опис та представлення створеного інтерфейсу користувача
Для зручності роботи користувача з базою даних розроблено інтерфейс користувача, який складається з головної форми ("frm_main1"), форми перегляду детальної інформації ("frm_redag"), форми формування звітів ("frm_data"), а також зі звіту по обліку книг.
4.1 Головна форма
Головна форма (рис. 4.1.1.) представлена у вигляді стрічкової форми. На головній формі передбачено перегляд видачі і повернення книг, а саме: код видачі, дата видачі, дата повернення, код книги, назва, автор, жанр, ціна, ПІБ читача. Заголовок форми містить випадаючий список та текстове поле для фільтру по книгам та читачам відповідно, за допомогою яких можна досить легко знайти потрібну інформацію. Також форма містить кнопки: пошук, показати всі записи, додати новий запис та сформувати звіт.
Рис. 4.1.1. - Головна форма
Головна форма формується на основі запиту поданого на рис. 4.1.2. В ньому реалізовано пошук за заданими в заголовку форми критеріями. Якщо змінити у випадаючому списку книгу (обравши потрібну зі списку) чи натиснути кнопку пошук (попередньо увівши прізвище шуканого читача) відбувається оновлення форми за допомогою її методу - Requery (див. додаток А).
Рисунок 4.1.2. - Конструктор для запиту "qvr_main"
Для зручності перегляду прізвищ, імен та по-батькові читачів у запиті прописали ПІБ для читачів:
ПІБ читача=( [S_name] & " " & Left([Name];1) & ". " & Left([L_name];1) & ".")
Також для функціонування фільтрів в головній формі була прописана дія для пошуку книг та ПІБ читача:
Книга=(Like [Forms]![frm_main1]![cmb_knh] & "*")
ПІБ читача=(Like [Forms]![frm_main1]![txt_prisv] & "*")
Підсумки в формі підбиваються за допомогою вбудованих функцій Count та Sum:
Кількість записів= Count([id_issue]) та Ціна всіх книг= =Sum([Book_price]).
Копка видалення після підтвердження виконує запит на видалення (рис. 4.1.1.3.) за допомогою методу openQuery об'єкту DoCMD.
Рис. 4.1.3. - Запит на видалення
При натисненні кнопок детальна інформація та доповнити відкривається форма frm_redag, а в якості вхідного параметру (openArgs) в першому випадку передається код читача , в другому текстова мітка "new".
4.2 Форма детальної інформації
Форма детальної інформації (рис. 4.2.1) може відкриватися в 3-х режимах:
1. Якщо openArgs не задано (Null) - форма відкривається на першому записі, а також користувач має можливість переходу по записам за допомогою навігаційних кнопок;
2. Якщо openArgs має числове значення - форма відкривається на заданому у вхідному параметрі записі, а користувач не має можливості переходу по записам;
3. Якщо 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) - для надання властивості Locked (необхідних полів) значення value
Повний лістинг програмного коду подано у додатку Б.
4.3 Формування звітів
Для зручності формування звітів було розроблено спеціальну форму зображену на рис. 4.3.1. Вона має два текстові поля для введення дат початку та кінця звітного періоду, набір кнопок переглянути та відмінити.
Кнопка переглянути використовує метод OpenReport об'єкту DoCmd з параметром View - acNormal та acViewPreview відповідно, попередньо перевіривши доречність значення полів. Кнопка відмінити закриває форму. Повний лістинг програмного коду подано у додатку В.
Рис. 4.3.1. - Форма формування звіту
Звіти формуються на основі запиту.
У запиті qvr_data відбувається відбір даних за заданим проміжком часу: в рядку умови відбору поля Дата видачі записується:
Between [Forms]![frm_data]![txt_begin] And [Forms]![frm_data]![txt_end].
Рис. 4.3.2. - Звіт по видачі книг за період з 03.08.2014 по 05.08.2014
Висновки
В даній курсовій роботі була розглянута система керування базою даних Access на прикладі створення бази даних "Бібліотека".
Під час її виконання я навчилася визначати необхідні для створення бази даних дані, виконувати групування даних по таблицям, передбачати ключові поля, зв'язки між таблицями, створювати запити для функціонування фільтрів у головній формі, а також створювати інтерфейс користувача засобами вбудованої в СУБД мови програмування VBA.
Створена база даних є дуже корисною та зручною в користуванні.
Список використаної літератури
1. Андерсен В. - Базы данных Microsoft Access: проблемы и решения, Практ. Пособ./ пер. с англ. М.: ЭКОМ, 2001, 384 с.;
2. Глушаков С.В., Сурядный А. С. Microsoft Office 2000. Учебный курс - Харьков: "Фолио", 2002.;
3. Гринченко Н.Н., Гусев Е.В., Макаров Н.П. Проектирование баз данных. СУБД Microsoft Access. Учебное пособие. Телеком, 2004, - 240 с.;
4. Гончарова А.Ю., Access 2003. Самоучитель с примерами. Access 2003, Питер, КУДИЦ-Образ, 2004, - 272 с.;
5. Майкл Гандерлой, Сьюзан Сейлз Харкинз. Автоматизация Microsoft Access с помощью VBA, Вийлямс, 2006, - 416 с.;
6. Харитонова И. - Office Access 2003. Самоучитель. СПб.: Питер, 2004, 464 с.;
7. Носач О.Б., Терещенко О.Ю. Конспект лекцій "Практичне застосування MS Access та мови VBA" для студентів спеціальності "Економічна кібернетика" денної форми навчання. - Полтава: ПолтНТУ, 2011. - 89 с.;
8. Терещенко О.Ю. Методичні вказівки до виконання курсової роботи з дисципліни: Інформаційні системи та технології в економіці" для студентів спеціальності "Економічна кібернетика" денної форми навчання. - Полтава: ПолтНТУ, 2012 - 63 с.
Додатки
Додаток А - Процедури форми frm_main1
Private Sub btn_prisv_Click()
Me!cmb_knh = Null
Me.Requery
End Sub
Private Sub btn_redag_Click()
DoCmd.OpenForm "frm_redag"
End Sub
Private Sub cmb_knh_AfterUpdate()
Me!txt_prisv = Null
Me.Requery
End Sub
Private Sub txt_prisv_AfterUpdate()
Me!cmb_knh = Null
Me.Requery
End Sub
Private Sub btn_det_Click()
DoCmd.OpenForm "frm_redag", acNormal, , , , , id_issue
End Sub
Private Sub btn_del_Click()
If MsgBox("Ви дійсно хочете видалити запис?", vbQuestion + vbYesNo, "Видалення") = vbYes Then
DoCmd.OpenQuery "qvr_del"
Me.Requery
Else
Exit Sub
End If
End Sub
Private Sub btn_now_Click()
DoCmd.OpenForm "frm_redag", acNormal, , , , , "new"
End Sub
Private Sub btn_zvit_Click()
DoCmd.OpenForm "frm_data"
End Sub
Private Sub Ctl_btn_vse_Click()
cmb_knh = Null
txt_prisv = Null
Form_frm_main1.Requery
End Sub
Private Sub btn_vidm_Click()
rsMain1.CancelUpdate
DoCmd.Close acForm, "frm_main1", acDelNo
End Sub
Додаток Б - Процедури форми frm_redag
Option Compare Database
'Кнопка ЗБЕРЕГТИ
Private Sub btn_zberehtu_Click()
SetLocked (True)
If IsNull(Me!cmb_kodknh) Or Me!cmb_kodknh = "" Then
MsgBox "Неверно заполнено поле 'Код книги '", vbCritical, "Ошибка записи"
Exit Sub
End If
If IsNull(Me!cmb_reader) Or Me!cmb_reader = "" Then
MsgBox "Неверно заполнено поле 'Читацький квиток", vbCritical, "Ошибка записи"
Exit Sub
End If
If IsNull(Me!txt_vudacha) Or Not IsDate(txt_vudacha) Or Me!txt_vudacha = "" Then
MsgBox "Неверно заполнено поле 'Дата видачі'", vbCritical, "Ошибка записи"
Exit Sub
End If
If IsNull(Me!txt_povern) Or Not IsDate(txt_povern) Or Me!txt_povern = "" Then
MsgBox "Неверно заполнено поле 'Дата повернення'", vbCritical, "Ошибка записи"
Exit Sub
End If
'Кнопки
btn_redag.Enabled = True
btn_zberehtu.Enabled = True
btn_exit_from_redag.Enabled = True
'-----------редагування окремо-------
If IsNull(Me.OpenArgs) Then
SaveData
rsOblik.Update
btn_nast.Enabled = True
btn_pop.Enabled = True
btn_vidm.Enabled = False
'----------Редагування з головної форми-----
ElseIf (IsNumeric(Me.OpenArgs)) Then
open_recordset rsOblik, "tabl_Oblik"
rsOblik.Find "id_issue= " & Me.OpenArgs, , adSearchForward, 1
SaveData
rsOblik.Update
rsOblik.Close
Set rsOblik = Nothing
DoCmd.Close acForm, "frm_redag", acSaveYes
'---------Додавання запису-------------
ElseIf Me.OpenArgs = "new" Then
open_recordset rsOblik, "tabl_Oblik"
rsOblik.AddNew
SaveData
rsOblik.Update
rsOblik.Close
Set rsOblik = Nothing
DoCmd.Close acForm, "frm_redag", acSaveYes
Form_frm_main1.Requery
End If
End Sub
Private Sub Form_Open(Cancel As Integer)
'Відкриття набору записів Recordset для головної таблиці
open_recordset rsOblik, "tabl_Oblik"
If rsOblik.State <> adStateOpen Then 'якщо рекордсет не відкрився
MsgBox "Can`t open recordset", vbCritical, Error
Exit Sub
End If
'Перевірка режиму відкриття форми
'-----------Окремо-----------------------------------
If IsNull(Me.OpenArgs) Then 'якщо openArgs не визначений завантужємо перший кортеж
loadData
btn_nast.Enabled = True
btn_pop.Enabled = True
btn_vidm.Enabled = False
btn_exit_from_redag.Enabled = True
'-----------З головної форми------------------------
ElseIf (IsNumeric(Me.OpenArgs)) Then
btn_nast.Enabled = False
btn_pop.Enabled = False
btn_exit_from_redag.Enabled = False
btn_vidm.Enabled = True
rsOblik.Find "id_issue= " & Me.OpenArgs, , adSearchForward, 1
loadData
rsOblik.Close
Set rsOblik = Nothing
' ----------В режимі доповнення-----------------
ElseIf Me.OpenArgs = "new" Then
btn_nast.Enabled = False
btn_pop.Enabled = False
btn_zberehtu.Enabled = True
btn_redag.Enabled = False
btn_vidm.Enabled = True
btn_exit_from_redag.Enabled = False
SetLocked (False)
txt_vudacha = Date
txt_povern = Date
Me.Caption = "Новий запис"
rsOblik.Close
Set rsOblik = Nothing
End If
End Sub
'Кнопка РЕДАГУВАТИ
Private Sub btn_redag_Click()
cmb_kodknh.SetFocus
'Кнопки
btn_redag.Enabled = False
btn_nast.Enabled = False
btn_pop.Enabled = False
btn_vidm.Enabled = True
btn_zberehtu.Enabled = True
btn_exit_from_redag.Enabled = False
SetLocked (False)
End Sub
'Кнопка ВІДМІНИТИ
Private Sub btn_vidm_Click()
SetLocked (True)
btn_redag.Enabled = True
btn_zberehtu.Enabled = False
btn_redag.SetFocus
btn_vidm.Enabled = False
'-------Якщо форма була відкрита автономно активізуємо кнопки переходу по записам та вихід---
If (IsNull(Me.OpenArgs)) Then
btn_nast.Enabled = True
btn_pop.Enabled = True
btn_exit_from_redag.Enabled = True
End If
'-------Якщо форма була відкрита у режимі доповнення або з головної таблиці
If Not IsNull(Me.OpenArgs) Then
DoCmd.Close acForm, "frm_redag", acSaveNo
Else
loadData
End If
End Sub
'Кнопка "ПОПЕРЕДНІЙ ЗАПИС"
Private Sub btn_pop_Click()
rsOblik.MovePrevious
If rsOblik.BOF <> True Then
loadData
Else
rsOblik.MoveFirst
MsgBox "Перший запис", vbExclamation
End If
End Sub
'Кнопка "НАСТУПНИЙ ЗАПИС"
Private Sub btn_nast_Click()
rsOblik.MoveNext
If Not rsOblik.EOF Then
loadData
Else
rsOblik.MovePrevious
MsgBox "Останній запис", vbExclamation
End If
End Sub
'Процедура для випадаючого списку "BOOK"
Private Sub cmb_kodknh_AfterUpdate()
On Error GoTo ErrStr
open_recordset rsBook, "tabl_Book"
rsBook.Find "id_Book = " & Me!cmb_kodknh, , adSearchForward, 1
Me!txt_nasva = rsBook("Title_B")
Me!txt_avtor = rsBook("Author")
Me!txt_genre = rsBook("Genre_B")
Me!txt_zina = rsBook("Book_price")
Me!txt_vud = rsBook("Publishing_house")
Me!txt_mova = rsBook("Language_P")
rsBook.Close
Set rsBook = Nothing
Exit Sub
ErrStr:
MsgBox "Неправильно заповнене поле 'BOOK'", vbCritical, "Ошибка"
End Sub
'Процедура для випадаючого списку "READER"
Private Sub cmb_reader_AfterUpdate()
On Error GoTo ErrStr
open_recordset rsReader, "tabl_Reader"
rsReader.Find "id_reader = " & Me!cmb_reader, , adSearchForward, 1
Me!txt_pr = rsReader("S_name")
Me!txt_im = rsReader("Name")
Me!txt_pb = rsReader("L_name")
Me!txt_domad = rsReader("address")
Me!txt_nomtel = rsReader("telefon")
Me!txt_dnar = rsReader("date_birth")
rsReader.Close
Set rsReader = Nothing
Exit Sub
ErrStr:
MsgBox "Неправильно заповнене поле 'READER'",
vbCritical, "Ошибка"
End Sub
Public Sub loadData()
'OBLIK
Me!cmb_kodknh = rsOblik("id_Book")
Me!cmb_reader = rsOblik("id_reader")
Me!txt_vudknh = rsOblik("id_issue")
Me!txt_vudacha = rsOblik("date_issue")
Me!txt_povern = rsOblik("date_return")
'BOOK
open_recordset rsBook, "tabl_Book"
rsBook.Find "id_Book = " & Me!cmb_kodknh, ,
adSearchForward, 1
Me!txt_nasva = rsBook("Title_B")
Me!txt_avtor = rsBook("Author")
Me!txt_genre = rsBook("Genre_B")
Me!txt_zina = rsBook("Book_price")
Me!txt_vud = rsBook("Publishing_house")
Me!txt_mova = rsBook("Language_P")
rsBook.Close
Set rsBook = Nothing
'READER
open_recordset rsReader, "tabl_Reader"
rsReader.Find "id_reader = " & Me!cmb_reader, ,
adSearchForward, 1
Me!txt_pr = rsReader("S_name")
Me!txt_im = rsReader("Name")
Me!txt_pb = rsReader("L_name")
Me!txt_domad = rsReader("address")
Me!txt_nomtel = rsReader("telefon")
Me!txt_dnar = rsReader("date_birth")
rsReader.Close
Set rsReader = Nothing
End Sub
Private Sub btn_exit_from_redag_Click()
DoCmd.Close acForm, "frm_redag", acSaveNo
End Sub
'Процедура для запису в recordset даних з полів форми
Public Sub SaveData()
rsOblik("id_Book") = Me!cmb_kodknh
rsOblik("date_issue") = Me!txt_vudacha
rsOblik("date_return") = Me!txt_povern
rsOblik("id_reader") = Me!cmb_reader
End Sub
'Процедура для надання властивості Locked
Public Sub SetLocked(value As Boolean)
'Вкладка Книги
Me!cmb_kodknh.Locked = value
Me!txt_vudacha.Locked = value
Me!txt_povern.Locked = value
'Вкладка Читачі
Me!cmb_reader.Locked = value
End Sub
Додаток В - Процедури форми frm_data
Option Compare Database
Private Sub btn_ok_Click()
If IsNull(Me!txt_begin) Or Me!txt_begin = "" Then
MsgBox "Невірно введені дані : Початок періоду", vbCritical, Error
Exit Sub
End If
If IsNull(Me!txt_end) Or Me!txt_end = "" Then
MsgBox "Невірно введені дані : Кінець періоду", vbCritical, Error
Exit Sub
End If
DoCmd.OpenReport "rpt_data", acViewPreview
DoCmd.Close acForm, "frm_data"
End Sub
Private Sub btn_otmena_Click()
DoCmd.Close acForm, "frm_data"
End Sub
Додаток Г- Додатковий модуль
Option Compare Database
Public rsBook As ADODB.Recordset 'Для таблиці Book
Public rsReader As ADODB.Recordset 'Для таблиці Reader
Public rsOblik As ADODB.Recordset 'Для таблиці Oblik
Public Sub open_recordset(rst As ADODB.Recordset, Name As String)
Set rst = New ADODB.Recordset
With rst
.CursorType = adOpenKeyset
.LockType = adLockOptimistic
.Open Name, CurrentProject.Connection, , adCmdTable
End With
End Sub
Размещено на Allbest.ru
Подобные документы
Створення баз даних з використанням платформи Microsoft Access 2010 та структурованих запитів SQL. ER-діаграма бази даних з описом кожної сутності та її атрибутів. Розробка інтерфейсу, елементів навігації та макросів для автоматичного виконання запитів.
курсовая работа [3,1 M], добавлен 21.08.2014Система управління базами даних, ієрархічна модель даних, її проектування та створення. Інтерфейс Microsoft Access, створення структури таблиці, запитів, форм, звітів, макросів. Аналіз зв'язків між таблицями, що описують поняття проблемного середовища.
курсовая работа [2,7 M], добавлен 10.11.2010Створення інформаційних таблиць бази даних. Створення екранних форм як засобу організації інтерфейсу користувача. Створення запитів для вибору, сортування і обчислення з використанням даних однієї таблиці. Оформлення звітів за допомогою команд MS Access.
лабораторная работа [397,7 K], добавлен 09.09.2010Опис процесу створення технічного завдання на розробку бази даних для сільської бібліотеки. Виявлення масиву даних та їх структури. Внесення інформації в базу. Визначення типів і зв’язків між таблицями. Створення інтерфейсу системи керування базою даних.
контрольная работа [174,9 K], добавлен 07.01.2015Створення бази даних та робота з нею у програмному забезпеченні Microsoft Access. Проектування форм для зручного заповнення таблиць, звітів для відображення даних та їх друку, кнопкової форми, яка потрібна для зручної навігації між функціями бази даних.
курсовая работа [1,3 M], добавлен 04.10.2014Визначення мети створення бази даних магазину та таблиць, які вона повинна містити. Розгляд видів полів та ключів таблиць. Створення запитів, форм, звітів, макросів та модулів. Вибір системи управління базами даних. Реалізація моделі у Microsoft Access.
курсовая работа [3,8 M], добавлен 20.07.2014Опис основних кроків створення бази даних по автомобілям у програмі Microsoft Access, та запитів. Порядок формування таблиць, їх зміст і структура, встановлення зв'язків між таблицями. Операції, що проводяться над таблицями. Правила оформлення звіту.
практическая работа [1,1 M], добавлен 27.05.2010Основні поняття та особливості розробки баз даних в Microsoft Access. Побудова бази даних магазину побутової техніки: створення таблиць та встановлення зв’язків між ними, створення запитів, форм та звітів. Охорона праці і гігієна користувача комп'ютера.
курсовая работа [2,5 M], добавлен 19.01.2010Проектування бази даних "Аптека" у Microsoft Access, розробка структури таблиць, ключових полів і схеми даних. Створення запитів різних типів, екранних форм різного виду для введення і перегляду даних. Створення кнопкових форм, що полегшують навігацію.
дипломная работа [3,1 M], добавлен 16.11.2014Проектування бази даних: визначення об’єктів, структура таблиць, побудова схеми даних, забезпечення цілісності даних, створення певних відношень між таблицями, створення запитів, побудова форм, оформлення об’єктів. Розробка інструкції користувача.
курсовая работа [1,9 M], добавлен 19.09.2014