
- •1 Постановка завдання
- •2 Загальна частина
- •2.1 Вимоги до технічних засобів, що застосовуються
- •2.2 Опис інструментальних засобів, що застосовуються
- •3 Спеціальна частина
- •3.1 Опис структури бази даних
- •3.1.1 Опис інтерфейсу програми
- •3.1.2 Опис вхідних даних
- •3.1.3 Контроль коректності вхідних та вихідних даних
- •3.1.4 Опис структури та складових системи
- •3.2 Експлуатаційна частина
- •3.2.1 Підготовка програми до виконання
- •3.2.2 Інструкція користувача
- •3.2.3 Опис критичних ситуацій та повідомлень програми
- •3.2.4 Опис процесу налагодження програми
- •4 Економічна частина
- •5 Охорона праці
ЗМІСТ
ВСТУП 3
1 ПОСТАНОВКА ЗАВДАННЯ 5
2 ЗАГАЛЬНА ЧАСТИНА 7
2.1 Вимоги до технічних засобів, що застосовуються 7
2.2 Опис інструментальних засобів, що застосовуються 7
3 СПЕЦІАЛЬНА ЧАСТИНА 13
3.1 Опис структури бази даних 13
3.1.1 Опис інтерфейсу програми 14
3.1.2 Опис вхідних даних 25
3.1.3 Контроль коректності вхідних та вихідних даних 26
3.1.4 Опис структури та складових системи 27
3.2 Експлуатаційна частина 31
3.2.1 Підготовка програми до виконання 32
3.2.2 Інструкція користувача 32
3.2.3 Опис критичних ситуацій та повідомлень програми 39
3.2.4 Опис процесу налагодження програми 40
4 ЕКОНОМІЧНА ЧАСТИНА 44
5 ОХОРОНА ПРАЦІ 49
ВИСНОВОК 69
СПИСОК ЛІТЕРАТУРИ 71
ДОДАТОК А 81
ДОДАТОК Б 86
ДОДАТОК В 129
ДОДАТОК Г 130
ВСТУП
Темою даного дипломного проекту є «Ведення бази даних приватного магазину».
В даний час поєднання слів «автоматизація обліку даних» сформувалося в стійкий термін у власників приватних магазинів, постачальників обладнання та програмного забезпечення (ПЗ). В ньому є відразу і узагальнення, і, навпаки, вузьке трактування сенсу складових слів.
Під терміном «магазин» мається на увазі узагальнене поняття: будь-який магазин будь-якого типу.
«Автоматизація» в даному випадку, навпаки, трактується обмежено і не зачіпає безпосередньо виробничі процеси (виготовлення товарів), а стосується тільки інформаційної складової бізнесу – обліку, документообігу, продажу та інших процесів, пов'язаних з обробкою даних.
У зв'язку з тим, що в Україні торгівля є однією з сфер приватного підприємництва, що найбільш динамічно розвивається, попит на системи автоматизації магазинів постійно зростає. Автоматизація стала тут стандартом, необхідною умовою конкурентоспроможності бізнесу.
На даний момент в Україні, Росії та інших країнах СНД кількість автоматизованих магазинів та їх мереж обчислюється десятками тисяч, продовжуючи швидко рости.
До завдань автоматизації входять:
підвищення прибутковості і зниження витрат підприємства;
контроль та оптимізація діяльності підприємства;
поліпшення якості обслуговування відвідувачів;
запобігання розкрадань та інших зловживань з боку персоналу;
збільшення продуктивності праці персоналу;
створення систем лояльності, різноманітні системи знижок для постійних клієнтів.
В результаті аналізу стану галузі постає задача про надання клієнтам електронного меню з переліком усіх товарів, які має магазин в наявності, надання адміністратору (або продавцю) повноважень змінювати перелік товарів та надання покупцям можливості ведення бази даних замовлень.
Виходячи з вище написаного, можна зробити висновок, що тема дипломного проекту є актуальною, а поставлене завдання – своєчасним.
1 Постановка завдання
Тема даного курсового проекту - «Ведення бази даних приватного магазину».
В рамках даного курсового проекту потрібно організувати базу даних в СУБД Paradox для приватного магазину та засобами інтегрованого середовища розробки Borland C++ Builder розробити програму, яка дозволяє працювати з розробленою базою даних.
Для обслуговування баз даних програма повинна виконувати обов’язкові функції та індивідуальні запити.
Обов’язкові функції:
Додавання записів до бази даних;
Редагування записів бази даних;
Видалення записів із бази даних;
Сортування записів бази даних;
Перегляд записів із бази даних;
Індивідуальні запити:
Про суму виручки магазину на задану дату;
Про суму виручки магазину на заданий інтервал часу;
Про максимальну вартість покупки;
Про загальну виручку магазину.
Про пошук товару заданого найменування;
Про товари конкретного відділу;
Про товари заданого відділу в заданому діапазоні цін;
Про товари із закінченим терміном придатності.
Крім того, програмна повинна перевіряти усі введені дані, які надходять з клавіатури, на коректність та видавати повідомлення в випадку не вірного введення.
Базу даних можливо створити за допомогою вбудованої до C++ Builder програми Database Desktop. База даних повинна містити наступні дані:
Відділ магазину (строкове значення);
Найменування товару (строкове значення);
Кількість товару (ціле значення);
Термін придатності (значення дати);
Ціна (дійсне значення);
Виробник (строкове значення);
Дата покупки (значення дати);
Вартість покупки (дійсне значення).
Програма повинна мати зручний для користувача інтерфейс та виводити підказки для пояснення дій, необхідних для роботи користувача.
Перегляд існуючої бази даних виконати у вигляді таблиці.
Програмне забезпечення повинне працювати на персональних комп’ютерах.
2 Загальна частина
2.1 Вимоги до технічних засобів, що застосовуються
Технічні вимоги до комп'ютера повинні відповідати мінімальним системним вимогам для розробки і експлуатації створюваної програми. Ці вимоги приведені для всіх використовуваних програмних засобів.
Вимогою до складу і параметрів технічних засобів є те, що система повинна працювати на ІBM-сумісних персональних комп'ютерах.
Мінімальна конфігурація комп'ютеру:
тип процесора Pentіum і вище;
обсяг оперативного запам'ятовуючого пристрою 16 Мб і більше;
обсяг вільного місця на жорсткому диску 10 Мб;
CD\DVD не обов'язково;
маніпулятор «миша» не обов'язковий для роботи й установки.
Конфігурація, що рекомендується:
тип процесора Pentіum ІІ 400;
обсяг оперативного запам'ятовуючого пристрою 128 Мб і більше;
обсяг вільного місця на жорсткому диску 100 Мб.
Вимога до програмної сумісності - програма повинна працювати під керуванням сімейства операційних систем Wіn32 (Wіndows 2000 /МЕ/ ХР/ Vista/
7/ 8 і т.п.).
2.2 Опис інструментальних засобів, що застосовуються
Для розробки програми було обране інтегроване середовище розробки C++ Builder з використанням пакету Borland C++ Builder 6.
Однією з найбільш поширених у цей час технологій розробки програм є технологія об’єктно-орієнтованого візуального програмування, яка дозволяє швидко розробляти програми. Серед систем візуального об’єктно-орієнтованого програмування найбільш цікавою, на наш погляд, системою для розробки програм є система Borland C++ Builder.
За допомогою інструментарію Borland C++ Builder можна створювати зручні у виконанні програми, які працюють у середовищі Windows. Одночасно технологія візуального програмування дає змогу швидкого програмування інтерфейсу програм.
На основі попереднього аналізу є цілком обґрунтованою ціль розробки програмного забезпечення, призначеного для використання у галузі торгівельного бізнесу.
C++ Builder – програмний продукт, який являє собою інструмент швидкої розробки додатків (RAD), інтегроване середовище програмування (IDE), система, яка використовується програмістами для розробки програмного забезпечення на мові програмування C++.
Спочатку пакет розроблявся компанією Borland Software, потім її підрозділом CodeGear, а нині належить компанії Embarcadero Technologies.
C++ Builder об'єднує в собі комплекс об'єктних бібліотек (STL, VCL, CLX, MFC тощо), компілятор, відладчик, редактор коду і багато інших складових. Цикл розробки аналогічний Delphi. Більшість компонентів, розроблених в Delphi, можна використовувати і в C++ Builder без модифікації, але зворотне твердження не вірне .
C++ Builder містить інструменти, які за допомогою drag-and-drop дійсно роблять розробку візуальною, спрощують програмування завдяки вбудованому WYSIWYG-редактору інтерфейсу і таке інше.
Програмування в Borland C++ Builder складається з двох основних етапів:
Візуальна побудова програми на основі об’єктних компонентів та налаштування їх властивостей, в результаті чого можна швидко сформувати інтерфейс користувача та забезпечити значну долю функціональності додатку.
Написання програмного коду на мові Object С Builder для забезпечення особливої функціональності додатку, котру неможливо досягнути використанням візуальної побудови.
2.2.1 Основні поняття графіки в Borland C++ Builder
При розробці програми дипломного проекту для покращення візуального інтерфейсу застосовувалися графічні компоненти та об’єкти.
У середовищі C Builder існує три роду об'єктів, які мають відношення до графіку:
Канва - надає бітову карту поверхні вікна програми, компоненти, принтера і т.п., яка може бути використана для виведення графіки. Канва не самостійний об'єкт, вона завжди є властивістю якогось іншого графічного об'єкта.
Графіка - представляє растрове зображення деякого файлу або ресурсу (бітового образу, піктограми або метафайлу).
C Builder визначає похідні від базового класу TGraphic об'єктні класи:
TBitmap,
Ticon,
TMetafile.
Малюнок (TPicture) являє собою контейнер для графіки, який може містити будь-які класи графічних об'єктів. Таким чином, контейнерний клас TPicture може містити бітовий образ, піктограму, метафайл або деякий інший графічний тип, визначений користувачем, а додаток може стандартно звертатися до всіх об'єктів контейнера за допомогою об'єкту TPicture.
Зазначимо, що графічні об'єкти Windows взаємопов'язані. Так - об'єкт TPicture завжди містить деяку графіку, якої у свою чергу, може знадобитися для відображення канва, а єдиний стандартний графічний клас канви - це TBitmap.
Як зазначалося вище, Borland С++ Builder інкапсулює функції Windows GDI на різних рівнях. Найбільш завершеним є інтерфейс, наданий властивістю Canvas (канва), об'єктного класу канви, його графічних компонент. Використання канви знімає з програміста турботу при виведенні зображень про ініціалізації контексту пристрою і його звільнення. Наявності вкладених властивостей (характеристик пера, пензля, шрифтів, растрових зображень) також не вимагає стеження за станами ресурсів - основне завдання - це визначення характеристик для цих графічних об'єктів і грамотне їх використання.
Усі три перелічені роди об'єктів, які мають відношення до графіки, були застосовані у програмі дипломного проекту.
Інкапсульовані і перевантажені функції GDI і WinApi об'єктного класу канви багато авторів відносять до трьох різних рівнів. У цій умовній класифікації функції високого рівня забезпечують можливість малювання ліній, фігур і тексту. Визначення властивостей і методів маніпулювання графічними примітивами канви віднесені до середнього рівня. Нижній рівень забезпечується доступ до самих функцій Windows GDI. Класифікація не безперечна, але вона дозволяє орієнтуватися в досить великій кількості властивостей і методів канви і, тому, ця класифікація наведена в таблиці 2.1.
Таблиця 2.1 – Класифікація методів канви
Рівень |
Метод(Функція) |
Властивість |
Дія |
Високий |
MoveTo |
PenPos |
Визначає поточну позицію пера |
LineTo |
PenPos |
Малює пряму до заданої точки |
|
Rectangle |
- |
Малює прямокутник |
|
Ellipse |
- |
Малює еліпс |
|
Arc |
- |
Малює дугу |
|
Polyline |
- |
Малює ламану лінію |
|
PolyBezier |
|
Малює криву Блейзера |
|
Chord |
- |
Малює сектор |
|
DrawFocusRect |
- |
Малює прямокутник |
|
FrameRect |
- |
Виводить рамку навколо прямокутника |
|
Pie |
- |
Виводить сектор кола |
|
TextOut |
- |
Виводить текстовий рядок |
|
TextWidth |
- |
Задає ширину для виведення текстового рядка |
|
TextHeight |
- |
Задає висоту текстового рядка |
Продовження таблиці 2.1
Рівень |
Метод(Функція) |
Властивість |
Дія |
Високий |
TextRect |
- |
Виведення тексту усередині прямокутника |
FillRect |
- |
Заливка зазначеного прямокутника кольором і текстурою поточної кисті |
|
FloodFill |
- |
Заливка області канви (довільної форми) заданим кольором |
|
Середній |
- |
Pen |
Використовується для установки кольору, стилю, ширини і режиму пера |
- |
Brush |
Використовується для установки кольору і текстури при заливці графічних фігур і фону канви |
|
- |
Font |
Використовується для установки шрифту заданого кольору, розміру і стилю |
|
- |
Pixels |
Використовується для читання і запису кольору заданого пікселя канви |
|
CopyRect |
CopyMode |
Копіює прямокутну область канви в режимі CopyMode |
|
BrushCopy |
- |
Копіює прямокутну область канви із заміною кольору |
|
Draw |
- |
Малює бітовий образ, піктограму, метафайл в заданому місці канви |
Продовження таблиці 2.1
Рівень |
Метод(Функція) |
Властивість |
Дія |
|
StretchDraw |
- |
Малює бітовий образ, піктограму або метафайл так, щоб цілком заповнити заданий прямокутник |
Низький |
- |
Handle |
Використовується як параметр при виклику функцій Windows GDI |