- •1. Пояснення до тексту пояснювальної записки
- •1.1. Рекомендований зміст пояснювальної записки
- •1.2. Поради щодо складання тексту пояснювальної записки
- •2. Варіанти задач курсової роботи
- •Регіон: код регіону, назва регіону;
- •Регіон: код регіону, назва регіону;
- •Регіон: код регіону, назва регіону;
- •Регіон: код нафтогазоносного регіону, назва нафтогазоносного регіону.
- •Область: код регіону, код області, назва області.
- •Регіон: код регіону, назва регіону.
- •Область: код регіону, код області, назва області.
- •Регіон: код регіону,назва регіону.
- •Регіон: код регіону,назва регіону.
- •Область: код регіону, код області, назва області.
- •Регіон: код регіону, назва регіону.
- •Область: код регіону, код області, назва області, герб області.
- •Регіон: код регіону, назва регіону.
- •Працівники: код працівника, прізвище, ім’я, по батькові.
- •Маршрути: номер маршруту, найменування маршруту.
- •Студенти: код студента, прізвище, ім’я, побатькові, адреса, телефон, стать.
- •Філії: номер філії, назва філії, адреса філії, телефон філії, кількість працівників філії.
- •Підприємства: номер підприємства, назва підприємства, адресса підприємства, телефон, керівник підприємтсва.
- •Жанр: код жанра, жанр.
- •Заклади: код закладу, назва закладу, керівник закладу, адреса закладу, номер телефону.
- •Напрям: код напряму, напрям.
- •Підприємства: № підприємства, назва підприємства, адресса, телефон.
- •Автомобілі: номер автомобіля, марка автомобіля, дата випуску, дата реєстрації.
- •Підприємства: код підприємства, назва підприємства, адреса підприємтсва, шифр підприємства, оборотні кошти підприємства.
- •3.1. Постановка задачі до прикладу курсової роботи
- •3.3. Виконання роботи
- •3. 3.1. Розробка та обгрунтування структури бази даних
- •3.2. Побудова таблиць, підбір та обгрунтування контрольних даних таблиць
- •3.3. Програмування запитів
- •3.4. Виготовлення звітів
- •3.5. Конструювання форм
- •3.6. Застосування та редагування макросів
- •3.7. Складання модулів
3.3. Програмування запитів
Виготовлення запиту для діаграми. Назвемо запит Oplaty_zd – запит для діаграми. Цей та інші наші запити базуються на таблиці Oplaty_t, тому їхня назва починається з слова Oplaty. Він мав би містити всього два поля – згруповані номери місяців та cумарну кількість операцій за кожний місяць. Оскільки діаграма має відображати інформацію лише за останній рік, у запит внесено ще третє поле – для років.
Викличемо вікно конструктора запиту з вікна База даних командами:
об’єкт Запити – Створити;
вікно Новий запит – Конструктор.
В результаті появляється вікно Конструктора таблиці, на тлі якого знаходиться вікно Додати таблицю. Відзначимо таблицю Oplaty_t, натиснемо кнопку Додати. Закриємо вікно Додати таблицю командою Закрити.
У вікні Конструктора таблиці, яке залишилося і яке показане на рисунку 3.6, з таблиці Oplaty_t перенесемо в середню частину запиту три поля: Suma, Data і Data. Перед полем Suma у запиті зробимо напис Kilkist: (з двокрапкою), бо ми в цьому полі надіємося мати іменно кількість, цей напис стане іменем даного поля запиту. Для даного випадку (для підрахунку кількості записів) не має значення яке поле вносити, можна було і дату. До полів з датами застосуємо функції виділення номера місяця і року, отже, додамо імена відповідних функцій, тоді ці поля приймуть вигляд, відповідно:
Month([Data]) i Year([Data]).
Дочекаємося, коли конструктор надасть цим полям назви: Выражение1: і Выражение2: (з двокрапками) – для цього необхідно перенести курсор у інше поле запиту, та замінимо ці абстрактні імена на, відповідно, Misjac і Rik.
Для виклику рядка Групова операція скористаємося командою Групування з вікна MS Access або контекстного меню, її кнопка має вигляд букви Σ. При цьому курсор повинен бути встановленим у нижній частині вікна запиту. У полі Kilkist цього рядка виберемо з кишеньки групову операцію Count – підрахунок кількості записів. У полі Rik рядка Умова відбору запишемо вираз Year(Date()) – рік поточної системної дати. Закриємо запит, запишемо його ім’я Oplaty_zd і запит готовий.
Відкривши запит з вікна База даних, перевіримо його правильність (в режимі таблиці). Він матиме вигляд, показаний на рис. 3.7.
Kilkist |
Misjac |
Rik |
2 |
1 |
2004 |
1 |
2 |
2004 |
1 |
3 |
2004 |
5 |
4 |
2004 |
Рисунок 3.7 – Запит Oplaty_zd в режимі таблиці
Виготовлення запиту для квитанції. Запит для квитанції має містити інформацію з трьох таблиць: Platnyky_t, Oplaty_t і Fondy_t. Якби в тексті квитанції дату потрібно представити в короткому форматі (чч.мм.рр), то цього було б достатньо. Однак, для видачі назв місяців прийдеться виготовити проміжний запит Oplaty_zk, де одержати порядкові номери місяців. Тоді можна буде їх зв’язати з кодами таблиці Misjaci_t у іншому запиті Oplaty_zkm – запиті для квитанції з назвами місяців.
Запит Oplaty_zk в режимі конструктора показаний на рис. 3.8. У його верхнє поле внесені три потрібні таблиці. Зв’яжемо таблиці шляхом перенесення відповідних полів у верхній частині вікна. Перенесемо з таблиць у запит такі 10 полів: Priz, Adr, Suma, Kod_p, Kod_f, Naz_f, Data, Data, Data і Data. Поле Priz з’єднаємо з першою буквою поля Im за формулою (поле Priz & пробіл & перша буква поля Im & крапка):
[Platnyky_t].[Priz]&" "&mid([Im];1;1)&"."
Для виділення з дати порядкового номера місяця, дня і року до трьох останніх полів дати застосуємо формули, відповідно:
Month([Data]), Day([Data]) i Year([Data]).
Дочекаємося, щоб конструктор задав абстрактні імена полів запиту і замінимо їх, відповідно, на: Prizw (нагадаємо, що ім’я поля не може містити крапки), Mis, Den і Rik. Решту назв полів залишимо без зміни.
Поставимо три умови співпадання даних для видачі квитанції: 1 - дати поля Data з системною, 2 - кодів платника і 3 - фонду, введених під час запуску запиту, з тими, які є в таблиці Oplaty_t. Тому в якості умови відбору записів встановимо у полі Data функцію Date() –видачі системної дати.
Для вводу кодів під час відкриття запиту в режимі таблиці замість умов відбору в полях Kod_p та Kod_f запишемо формули-підказки, відповідно:
[Введіть код платника] i [Введіть код фонду].
Таким чином, запит Oplaty_zk є запитом з параметрами. Результати відкриття запиту в режимі таблиці показані на рис. 3.9. Під час його відкриття двічі появляється вікно з пропозицією ввести код платника (див. рис. 3.10) та фонду і полем для вводу цих кодів. Зауважимо, що запит був виготовлений 18.03.2001 р., тому саме на цю дату видана інформація. Введеними були: 2 – код платника і 1 – код фонду.
Запит Oplaty_zkm в режимі конструктора показаний на рис. 3.11. Для його виготовлення використаємо запит Oplaty_zk і таблицю Misjaci_t. Встановимо тимчасовий зв’язок між ними шляхом перетягування поля Kod_m на поле Mis. Ці поля мають однаковий тип – числовий, тому зв’язок між ними можливий. Перетягнемо у нижнє вікно необхідні поля: Prizw, Adr, Suma, Naz_f, Den, Naz_m і Rik. Запит готовий, тут не потрібні якісь операції групування, вирази чи умови відбору, вся необхідна інформація була вже відібрана в запиті Oplaty_zk. Зауважимо, що цей запит служить тільки для забезпечення словесної форми дати у тексті квитанції. Запит Oplaty_zkm відкритий в режимі таблиці, показаний на рисунку 3.12.
Виготовлення запитів для звіту Для формування звіту мусимо мати, як мінімум, два запити. Перший слугуватиме цілям підготовки даних для перехресного запиту, він показаний на рисунку 3.13 в режимі конструктора. Назвемо його Oplaty_zz – запит для звіту. У його верхній частині містяться три таблиці з готовими зв’язками, перенесені туди за допомогою вже знайомого нам вікна Додавання таблиць.
У нижнє вікно запиту перенесені поля, необхідні для звіту: Platnyk, Adr, Naz_f і Suma. Поле Prizw виготовлене за тією ж формулою, що і поле Prizw в запиті Oplaty_zk. Запит Oplaty_zz, відкритий в режимі таблиці, показаний на рисунку 3.14.
Для виготовлення другого – перехресного запиту Oplaty_zzp у вікні База даних виберемо перемикач Запити і команду Створити. Потім у вікні Новий запит відмітимо напис Перехресний запит та виконаємо команду Ok. Ці дії приведуть до появи майстра перехресного запиту, нам тільки залишається уважно придивлятися до його пропозицій і виконувати потрібні операції.
Отже, маємо кроки майстра:
майстер пропонує вибрати запит або таблицю, на основі якої буде виготовлений перехресний запит. Встановимо перемикач на Запити, зі списку виберемо Oplaty_zz. Для переходу на наступний крок натиснемо кнопку Далі;
на пропозицію майстра вибрати поля заголовків рядків відмітимо зі списку лівого віконця і перешлемо у праве віконце за допомогою стрілочки, поверненої вправо, імена полів: Platnyk та Adr;
відмітимо ім’я поля Naz_f – заголовки стовпчиків запиту;
відмітимо ім’я поля Suma на пропозицію вибрати поле для виконання обчислень у запиті. З кишеньки виберемо назву операції Sum – підсумовування. Встановимо перемикач у стан Так – обчислити підсумоване значення для кожного поля;
у запропоноване поле вводу імені запиту внесемо Oplaty_zzp – запит для звіту перехресний. Встановимо перемикач у режим перегляду. Натиснемо кнопку Готово.
Результати роботи майстра перехресного запиту показані на рисунку 3.15. Загалом, вони нас влаштовують, тому залишимо запит без змін.
