
Оплата за газ. Структура, функції й завдання.
Завдання:
Фірма -постачальник добрив господарствам агросектора уклали договори з певними замовниками . Фірма надає такі пільги: замовлення на 50 тонн і вище - 90 % вартості , на 100 тонн і вище - 85 %, на 200тонн і вище - 83 %. Для реєстрації замовлень , збереження інформації про замовників , про асортимент добрив і обробки цієї інформації необхідно розробити базу даних , яка містить наступну мінімальну інформацію : назва добрив , виготовлювач , норма використання на один гектар , вартість однієї тонни , термін зберігання , назва господарства , область , район , індекс , телефон , глава господарства , дата замовлення , категорія пільг , площу для обробки , дата поставки.
Запити :
• на певну дату поставки (яка може бути введена як параметр) всі замовлення ;
• збільшення вартості добрива на певну величину для певного виробника;
• для кожного замовника розрахувати необхідну кількість добрива , вартість цієї маси , суму до оплати ( вартість замовлення - пільги + 20 % ПДВ);
• сума замовлень за кожен місяць поточного року ;
• які добрива не користуються попитом ( замовлення на них відсутні протягом попереднього та поточного років ) ?
Завдання для створення форм та обробки даних.
Розробити систему , яка дозволяє реєструвати замовлення з підрахунком необхідної кількості добрив , вартості цієї маси , суми до оплати ( вартість замовлення - пільги +20 % ПДВ). Необхідно передбачити можливість вибору добрива , які мають однакові назви , але відрізняються за інших атрибутів .
Також необхідно передбачити можливість оновлення таблиці Добрива , коли термін зберігання певного виду добрива закінчився (видалення цих записів) .
Звіти :
• кількість поставлених добрив по місяцях для кожної області з підрахунком процентного входження для кожної області до загальної суми поставлених добрив;
• суму замовлень за кожен квартал поточного року по кожному господарству і загальну суму.
3 Опис виконання роботи
3.1 Створення таблиці в БД
Таблиці – це об'єкт БД, призначений для зберігання даних у вигляді записів (рядків) і полів (стовпців), у яких зберігається інформація, що становить зміст БД. Це базовий об'єкт Access, всі інші об'єкти є похідними й створюються на базі раніше підготовленої таблиці. Кожен запис у таблиці БД повинен мати первинний ключ, тобто ідентифікатор (або адреса), значення якого однозначно визначає той або інший запис. Ключ може складатися з одного або декількох полів. Первинний ключ повинен володіти двома властивостями: однозначна ідентифікація запису: запис повинен однозначно визначатися значенням ключа; відсутність надмірності: ніяке поле не можна видалити із ключа, не порушуючи при цьому властивості однозначної ідентифікації.
Кожне значення первинного ключа в межах таблиці повинне бути унікальним. У противному випадку неможливо відрізнити один запис від іншого. Таким чином, вказівка первинного ключа - це і є єдиний спосіб відрізнити один екземпляр об'єкта від іншого.
Створити таблицю в Access можна трьома способами. По-перше, можна скористатися майстром для побудови таблиці на основі зразків, що поставляють із Access. Цей метод має перевага в тім, що використаються плоди праці, уже проробленого кимсь для визначення, які поля найбільше підходять для конкретної таблиці.
Другий спосіб створення таблиці - створення таблиці в Режимі конструктора. Цей метод дозволяє прямо контролювати властивості полів таблиці. Якщо таблиця буде змінюватися, то одержимо доступ у цей режим.
Використовуючи третій метод, інформація вводиться в сітку, подібну до електронної таблиці, і надається можливість Access визначити тип інформації на основі уведених даних. Потім можна переглянути макет таблиці в режимі перегляду Режим конструктора й виконати необхідні зміни.
3.2 Створення нової БД у режимі конструктор
Створювана БД «Оплата за газ» по своїй структурі повинна бути багато-табличною. MS Access 2003 дозволяє створювати таблиці в режимі конструктора й у режимі майстра. У даній роботі при створенні таблиць використався режим конструктора.
Вікно бази даних
Таблиця «Клиенты»
Таблиця «Оплата»
3.3 Установка зв'язків між таблицями
MS Access створює реляційні БД. У цієї БД користувач може описувати відношення-зв'язку між декількома таблицями. Access ураховує ці зв'язки під час обробки запитів, побудови форм і звітів. У даної БД необхідно зв'язати створені раніше таблиці, для чого необхідно викликати команду горизонтального меню [Сервіс] - [Схема даних]. Використовуючи контекстне меню даного вікна можна додати необхідні таблиці. Виділивши ключове поле однієї таблиці, потрібно перетягнути його на відповідне поле іншої таблиці, після чого в діалоговому вікні можна встановити відповідну опцію - забезпечення цілісності даних. У цьому ж діалоговому вікні відображається тип створюваного зв'язку «один-до-одного». Уже готова схема даних БД «Оплата за газ» має такий вигляд:
3.4 Запити
3.4.1 Створення запиту за допомогою конструктора
Запит - об'єкт БД, що служить для селекції й фільтрації набору даних, дозволяє вибрати з великої кількості інформації тільки ту, котра відповідає певному критерію відбору й потрібна для рішення конкретного завдання. MS Access дає більші можливості при проектуванні запитів (включати не всі поля, вибирати, сортувати запису, торкати дані з декількох таблиць, виконувати обчислення, використати запит як джерело даних для звітів, форм й інших запитів, змінювати дані в таблицях). Рекомендується створювати запити за допомогою конструктора.
У верхній частині вікна Режим конструктора розташовується ряд маленьких віконець, у кожному з яких утримуються поля таблиці або запиту, які використаються для створення даного запиту.
Нижня половина вікна містить поля, які буде використати запит або повертати їхнього значення. Рядок Поле містить ім'я поля, а рядок Таблиця - ім'я таблиці або запиту. Звідки отримане поле. Рядок Сортування визначає, які поля використаються для сортування результатів виконання запиту. Якщо встановлено прапорець у рядку Висновок на екран, то значення цього поля буде повертатися як результат виконання запиту. Рядок Умова відбору починає набір рядків, що дозволяє вибирати ті записи, які повинні бути повернуті в результаті запиту.
Вікно побудови запитів.