logo search
ДИПЛОМ

2.3 Опис проекту

Основним призначенням автоматизованої системи управління є отримання інформації, яка дозволяє здійснювати контроль та аналіз наявних книг на складах, переміщення їх на інший склад, видалення кількості книг чи цілої групи з певного складу з метою отримання повної та чіткої інформації.

Доцільність автоматизації роботи менеджера чи простого користувача на ПЕОМ визначається, передусім, скороченням затрат часу на обробку інформації, підвищенням якості обліку, контролю за наявністю та рухом книг, підвищенням оперативності отримання результатних даних, збільшенням точності та достовірності інформації, можливістю обробки інформації, об’єм якої збільшується, а також організація комплексної системи автоматизованої обробки інформації книжкових складів, бухгалтерії організації. При цьому управлінський персонал звільняється від рутинних, чисто технічних операцій по обробці інформації, приділяючи більше уваги аналізу отриманих результатів і розробці відповідних управлінських рішень по удосконаленню управління інформацією.[20]

Основний зміст робіт, які виконує користувач заключається у формуванні запитів до існуючих наборів даних з метою отримання необхідної інформації та виведенні необхідних звітів, а також у веденні додаткової інформації, якщо має на це необхідні права.

Об’єктом, при управлінні яким розв’язується дана задача, є набір даних, а саме база даних книжкових складів.

У процесі розв’язання задачі на АРМ користувача формується результатна інформація, яка представлена у вигляді таблиць даних:

- таблиця даних “Склади” – інформація про склади, їхню інформацію, адреса, контактний телефон менеджера та ін.;

- таблиця даних “Книги” – інформація про книги, їх назва, автор, видавництво, рік видання та ціна;

- таблиця даних “Наявність” – інформація про наявність книг та у якій кількості а кожному складі, таблиця характеризується як і унікальним ключем так і ключами з інших таблиць для створення зв’язку між ними.

- таблиця даних “Продаж” – інформація про продаж книг, особливістю є те що кожний склад по різних цінах продає книги, тобто таблиця дає змогу користувача порівняти ціни та привабливість складу у порівнянні з іншими.

- таблиці запитів – це таблиці які формуються за запитами користувача, користувач може вивести потрібну тільки йому інформацію. По багатьом категоріям, це надає зручність у пошуку та впорядкуванню інформації з великої бази даних.

Доступ до програмного засобу “Book Store” є обмеженим, тобто щоб увійти в програму потрібно авторизуватися. Для кожного користувача є свої права, які надають певний доступ. Для того щоб добавити нового користувача, потрібно звернутися до адміністратора. Такі права має тільки він.

Розв’язок задачі припиняється при виникненні збійних ситуацій в апаратному забезпеченні або при виході з ладу електропостачання ЕОМ, а також при несанкціонованому доступі і відсутності необхідної для розв’язання задачі інформації.

При розв’язанні на задачі відбувається наступний розподіл функцій між користувачем і технічними засобами.

У функції користувача входить:

У функції технічних засобів входить:

При розв’язані задачі з автоматизованого обліку книг на складах використовують масиви оперативної і нормативно-довідкової інформації, що зберігаються на жорсткому магнітному диску. Масиви оперативної інформації вміщують у собі інформацію про книги, склади, про продаж книг та ін..

При роботі з АСУ використовуються наступні масиви баз даних: Books, Warehouses, Presences, Sales.

Це можна зробити за допомогою Database Desktop. Зайшовши в меню File→New→Table, треба вибирати тип бази (в даному проекті – Paradox 7) і створити поле з типом даних, розміром та якщо потрібно – індексацією. Таким чином створивши потрібну кількість полів зберігаємо базу даних в окремому файлі до якого згодом буде звертатись програма.[28]

Для кожної таблиці ми створюємо первинні ключі та індекси з допомогою яких усі таблиці між собою зв’язані.

Наведемо опис цих таблиць баз даних які використовуються у проекті:

Таблиця “Books”

Назва поля

Тип поля

Розмір поля

Ключ

Опис

Id

Integer

необмежений

Primary, Unique

Ідентифікатор книги

Name

String

50 символів

Назва книги

Author

String

50 символів

Автор книги

Publisher

String

50 символів

Видавництво

Year

Number

необмежений

Рік видання

Circulation

Number

необмежений

Тираж

Knowledge

String

25 символів

Область знань

Cost

Number

необмежений

Вартість екземпляра

Таблиця “Warehouses”

Назва поля

Тип поля

Розмір поля

Ключ

Опис

Id

Integer

необмежений

Primary, Unique

Ідентифікатор складу

Name

String

25 символів

Назва складу

Address

String

25 символів

Адреса

Phone

String

25 символів

Контактний телефон

Manager

String

25 символів

Менеджер складу

Таблиця “Presences”

Назва поля

Тип поля

Розмір поля

Ключ

Опис

Id

Integer

необмежений

Primary, Unique

Ідентифікатор наявності

Pack_Amount

Number

необмежений

К-сть упаковок

Item_Amount

Number

необмежений

К-сть в упаковці

Id_Warhoues

Integer

необмежений

Primary

Ідентифікатор складу

Id_Books

Integer

необмежений

Primary

Ідентифікатор книги

Таблиця “Sales”

Назва поля

Тип поля

Розмір поля

Ключ

Опис

Id

Integer

необмежений

Primary, Unique

Ідентифікатор продажу

Sale_Date

Дата

необмежений

Дата продажу

Cost

Number

необмежений

Ціна

Amount

Number

необмежений

Кількість

Id_Warhoues

Integer

необмежений

Primary

Ідентифікатор складу

Id_Books

Integer

необмежений

Primary

Ідентифікатор книги

Для використання наших таблиці у програмному засобі використовується компонент DBGrid, таблиця для відображення БД.

Для того щоб у таблиці відобразилися потрібні нам дані їх потрібно зв’язати з відповідними базами даних. Для цього потрібно буде декілька компонентів TTable та TDataSource, які ми розміщаємо на кожній потрібній формі. У властивостях TTable ми вибираємо необхідну таблицю, з наших створених, а у TDataSource вибираємо наш компонент TTable.

Компонент TTable є набором даних (НД). Він переважно використається у файл-серверних системах для доступу до даних з якої-небудь однієї таблиці БД. Щоб підготувати компонент до роботи, необхідно визначити ім'я цієї таблиці: розкриємо список його властивості TableName і виберемо у ньому таблицю. Щоб дані із таблиць змогла відобразити сітка DBGrid у головному вікні програми, її потрібно зв'язати із НД за допомогою спеціального компонента TDataSource: виділивши його на вкладці Data Access палітри компонентів і потім клацнувши на компоненті TTable у вікні дерева об'єктів, щоб зв'язати його із НД. Після встановлення зв’язку між таблицями тепер є можливість зв’язати БД з DBGrid.[27]

Оскільки у цій програмі ми створюємо ще й таблиці які містять різні дані з різних таблиці, нам потрібно це реалізувати. Для цього на форму поміщається крім DBGrid , TTable та TQuery . Зв’язуємо TTable з TQuery. У властивостях TQuery, а саме у SQLText пишемо необхідний запит для створення необхідної таблиці.

Приклад запиту:

SELECT b.author, b.name, w.name, SUM(pack_amount*item_amount) as amount

FROM books as b, presences as p, warhouses as w

WHERE b.id=p.id_book and p.id_warhouse=w.id and b.knowledge= :know

GROUP BY b.id, b.author, b.name, w.name

ORDER BY b.author, b.name

Також у проекті реалізована служба звітності, тобто для кожного набору даних, таблиці можна вивести звіт, який можна зберегти у зручному форматі або роздрукувати.

Для створення звітів використовувалась технологія Rave Reports. Генератор звітів Rave Reports розроблений фірмою Nevrona і входить до складу Delphi 7 в якості основного засобу для створення звітів. Він складається з трьох частин:

- Ядро генератора звітів забезпечує управління звітом і його попередній перегляд, і відправку на друк. Виконуваний код ядра сервера включається в додаток Delphi, роблячи його повністю автономним при роботі із звітами на комп'ютері клієнта;

- Візуальне середовище розробки звітів Rave Reports призначена для створення самих звітів. Вона дозволяє додавати до звіту сторінки, розмішати на них графічні і текстові елементи управління, підключати до звітів джерела даних і т. д. Звіти зберігаються у файлах з розширенням .rav і повинні поширюватися разом з додатками, які використовують їх;

- Компоненти Rave Reports розташовані на сторінці Rave Палітри компонентів Delphi. Вони забезпечують управління звітами в додатку.

Безумовно, візуальна середа розробки помітно спрощує процес створення звітів і дозволяє добитися кращих результатів меншими зусиллями, ніж в генераторі звітів Quick Report, який використовувався в попередніх версіях Delphi. Проте при першому знайомстві з продуктом помітні і його недоліки. Система допомоги залишає тяжке враження не тільки своєю крайньою лаконічністю, а й фактичними помилками. Багато властивостей і методи залишилися не документовані, і навпаки – наявні в статтях підказки опису не мають реальних аналогів в коді компонентів.[32]