Звіти найчастіше створюються на основі запитів, оскільки дуже часто необхідні поля присутні в різних таблицях, Нехай, наприклад, на основі значень запиту "Реалізація_Сума" потрібно сформувати звіт, де б було розраховано загальну (мінімальну, максимальну) суму покупки з кожного Покупця, а також загальну суму продажу. Для цього в основному вікні БД на панелі об'єктів активізують об'єкт Звіти клацнувши на ньому лівою клавішею миші:
а) в робочому полі вікна вибрати ярлик Створення звіту за допомогою майстра і двічі клацнути на ньому лівою клавішею миші;
б) у першому діалоговому вікні Майстра вибрати у списку Таблиці і запити запит "Реалізація_Сума". Після цього із групи Доступні поля за допомогою кнопок перенести всі поля у групу Обрані поля і натиснути кнопку Далі. Якщо звіт створюється на основі значень двох і більше зв'язаних таблиць, то на екрані з'являється вікно, в якому необхідно зазначити вигляд подання даних у звіті й натиснути кнопку Далі;
|
|
Рис. 32. Діалогове вікно Майстра Звітів де визначаються рівні Групування
в) у наступному вікні (рис. 32) майстер пропонує додати рівні групування, тобто потрібно вибрати поле (зі значеннями, що повторюються), в якому будуть групуватися дані (це поле КодПок). Спочатку активізують поле КодПок, а потім кнопку із стрілкою. У цьому самому вікні після активізації кнопки Групування..., можна визначити, яким чином відбуватиметься групування значень. Для текстових полів це може бути одна літера, перші три тощо, а для числових - інтервали по 10, 50 типів у групі. За замовчуванням активним є параметр Звичайний. Після цього необхідно натиснути кнопку Далі.
г) У наступному вікні (рис. 33) можна встановити порядок сортування. Для першого ключа відкривають список полів і вибирають потрібне поле (наприклад, Дата), за допомогою кнопки-перемикача визначають вид сортування - за спаданням чи за зростанням. Аналогічні дії виконують для створення інших ключів сортування.
Рис. 33. Діалогове вікно Майстра Звітів де визначається порядок Сортування
Потім потрібно визначити, які підсумки будуть розраховані у звіті. Для цього активізують кнопку Підсумки..., яка викликає діалогове вікно (рис.34), в якому активізують відповідні перемикачі (суму, максимальне та мінімальне значення у полі Сума). У групі Показати визначають, що саме буде поміщено у звіті: тільки підсумки чи значення разом із підсумками. Параметр Обчислити проценти розраховує відсоток підсумку групи щодо загального підсумку за полем. Після цього натискають кнопку OK і Далі.
|
|
Рис. 34. Діалогове вікно Підсумки де визначаються підсумкові значення
д) У наступних двох вікнах вибирають вид макету і стиль звіту. В останньому вікні майстра створення звітів вказують назву звіту, під якою він зберігатиметься у БД, і активізують кнопку Готово. Створений звіт має вигляд, поданий на рис. 35.
Редагують звіт у режимі Конструктора (рис.36). Він складається з таких частин:
> Заголовок звіту - містить назву звіту ("Реалізація...");
> Верхній колонтитул - містить назви полів звіту;
> Заголовок групи - містить ім'я поля зі значеннями, що повторюються і використовуються для розрахунку підсумків у групах значень звіту;
Рис. 35. Звіт реалізації продукції в розрізі покупців
> Область даних - містить імена полів, значення яких є у звіті (в цій самій області створюють додаткові розрахункові поля);
> Нижній колонтитул - містить поточну дату (функція Now), номер поточної сторінки, кількість усіх сторінок звіту;
> Примітки звіту — містить загальний підсумок звіту (загальну суму). До звіту можуть бути застосовані такі самі дії, як і до форми, тобто вилучення (додання) колонтитулів, створення розрахункових полів, розрахунок загальних функцій та ін.
Рис. 36. Звіт у режимі Конструктора
Завдання для практичної та самостійної роботи
Задача: В базі даних Realiz.mdb створити звіти:
> відомість реалізації продукції в хронологічному порядку;
> відомість реалізації продукції в розрізі найменувань продукції;
> відомість реалізації продукції в розрізі покупців;
> створити звіт з декількома рівнями групування і розрахунковими підсумками.
1. Створити відомість реалізації продукції в хронологічному порядку за допомогою Майстра на основі таблиці Реалізація.
2. Створити відомість реалізації продукції в розрізі найменувань продукції на основі запиту Реалізація_Сума.
3. Створити відомість реалізації продукції в розрізі покупців.
4. Створити відомість реалізації продукції для конкретного покупця.
5. Створити звіт, який би підраховував суму реалізації продукції за конкретний день, місяць і рік.
У цьому звіті буде використано декілька рівнів групування. Звіт буде ґрунтуватися на основі запиту, тому розпочнемо зі створення запиту:
1. Створюємо запит за допомогою Майстра на основі таблиць Реалізація і Продукція.
Із таблиці Реалізація переносимо два поля: Дата і Кількість, а з таблиці Продукція - поле Ціна. Назва запиту Сума реалізації за період.
2. Переходимо в режим Конструктора. Створюємо розрахункове поле Сума:[Кількість]*[Ціна].
Бажано, щоб дані в майбутньому звіті групувалися за роками, місяцями та днями. Для цього потрібно створити в запиті обчислювальні поля: Рік, Місяць і День. Ці поля будуть розраховуватись на основі значення поля Дата. Із кожної дати необхідно виділити рік, місяць і день, тоді ми зможемо за цими полями зробити потрібне нам групування.
|
|
3. Створюємо в бланку запиту розрахункове поле Рік і вводимо в перший рядок наступний вираз: Рік:Format([Дата];"уууу").
4. Створюємо поле Місяць і вводимо вираз: Micяць:Format ([Дата];"mmmm").
5. Створюємо поле День і вводимо вираз: День:Format([Дата];"dd").
У всіх трьох випадках використана функція Format(), щоб відобразити дату в потрібному вигляді: "уууу" - 4 цифри року; "mmmm" - повна назва місяця; "dd"- число дня 01, 02,..., або "d" - 1, 2,... ("dddd" – назва дня тижня Понеділок, Вівторок,... або "ddd" – Пн, Вв,...).
Ще створимо поле НомерМісяця, воно необхідне для сортування за місяцями, тому що при сортуванні за полем Місяць ми б одержали місяці, відсортовані в алфавітному порядку.
6. Вводимо вираз для поля НомерМісяця:Month([Дата]).
Функція Month повертає номер місяця в даті (Січень - 1, Лютий - 2,..., або вираз НомерМісяця:Format([Дата];"mm") - Січень - 01, Лютий - 02,...).
7. Встановлюємо сортування за зростанням в полях: Рік, НомерМісяця і День. Звіт повинен відображати дані тільки за період, який цікавить користувача. Тому необхідно задати в запиті параметри, які дозволять ввести початок і кінець періоду.
8. Вводимо в рядок Умова вибору поля Дата вираз: >=[Початок періоду] and <=[Кінець періоду], або Between [Початок періоду] and [Кінець періоду].
9. Збережіть запит і перевірте його на виконання.
10. Створюємо звіт за допомогою Майстра на основі запиту Сума реалізації за період і в режимі Конструктора вдосконалюємо вигляд звіту.
Контрольні запитання
1. Яке призначення звітів?
2. Які є способи створення звітів?
3. З яких частин складається звіт?
4. Який спосіб створення звітів є оптимальним для початківців?
5. Для чого призначений верхній колонтитул?
6. Як вибрати об'єкт у полі конструктора звіту?
7. Як змінити шрифт тексту всередині об'єкта?
8. Що таке групування записів у звіті?
9. Чому не варто групувати записи за полем лічильника?
10. Що таке реляційний звіт?
11. У чому полягає комбінований спосіб створення звіту?
12. Як перемістити об'єкт у режимі конструктора звіту?
13. Як розмалювати частини звіту різними кольорами?
|
|
14. Для чого групуються записи у звітах?
15. Для чого призначений Попередній огляд?
16. Чи можна редагувати дані у звіті?
17. Чи можна редагувати підписи полів у звіті?
18. У якій частині звіту можна поставити свій підпис як виконавця звіту?
19. Як змінній структуру звіту?