Автоматизована система "Готель"

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

Рубрика Программирование, компьютеры и кибернетика
Вид курсовая работа
Язык украинский
Дата добавления 21.11.2014
Размер файла 727,0 K

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

Размещено на http://www.allbest.ru/

[Введите текст]

МІНІСТЕРСТВО ОСВІТИ І НАУКИ УКРАЇНИ

БЕРДИЧІВСЬКИЙ КОЛЕДЖ ПРОМИСЛОВОСТІ,ЕКОНОМІКИ ТА ПРАВА

КУРСОВИЙ ПРОЕКТ

АВТОМАТИЗОВНА СИСТЕМА “ГОТЕЛЬ”

з дисципліни: “Технологія розробки програмного забезпечення”

Виконавець: Корнієць Я.О.

Керівник: Б.Г. Тростянський

Бердичів 2009

РЕФЕРАТ

Дисципліна: “ТЕХНОЛОГІЯ РОЗРОБКИ ПРОГРАМНОГО ЗАБЕЗПЕЧЕННЯ”

Тема: “АВТОМАТИЗОВАНА СИСТЕМА “ГОТЕЛЬ”.

У роботі описані процес і результати проектування автоматизованої системи “ГОТЕЛЬ”, призначеної для автоматизації ведення записів даних людей, які відвідують готель.

Результат розробки оформлений у виді програмного пакету і комплекту супроводжувальної документації.

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

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

ЗМІСТ

РЕФЕРАТ

ЗМІСТ

ВСТУП

1. АНАЛІЗ ПРЕДМЕТНОЇ ОБЛАСТІ І ПОСТАНОВКА ЗАДАЧІ НА РОЗРОБКУ ПРОГРАМИ

2. ОПИС СТРУКТУР ТА МЕТОДІВ ОБРОКИ ДАНИХ

2.1. ОБҐРУНТУВАННЯ ВИБОРУ МЕТОДІВ ТА ЗАСОБІВ ОБРОБКИ ДАНИХ

2.2. ОПИС СТРУКТУР ДАНИХ

3. ОПИС АЛГОРИТМУ ФУНКЦІОНУВАННЯ ПРОГРАМНОГО ЗАСОБУ

4. ОСНОВНА ЧАСТИНА

ВИСНОВОК

СПИСОК ВИКОРИСТАНИХ ДЖЕРЕЛ

ТЕХНІЧНЕ ЗАВДАННЯ НА РОЗРОБКУ ПРОГРАМНОГО ЗАСОБУ

КОДИ ПРОГРАМНИХ МОДУЛІВ

ВСТУП

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

Прикладом реалізації саме такої системи є запропонований програмний засіб “Готель”, призначений для автоматизації ведення записів даних людей, які відвідують готель, розроблений у відповідності до завдання на курсове проектування із дисципліни “Технологія розробки програмного забезпечення”.

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

Для реалізації поставленого завдання обрано сучасні інструментальні середовища і засоби програмування Borland Delphi 3.0, та відповідні засоби підтримки процесу розробки програм.

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

автоматизований програмний засіб готель

1. АНАЛІЗ ПРЕДМЕТНОЇ ОБЛАСТІ І ПОСТАНОВКА ЗАДАЧІ НА РОЗРОБКУ ПРОГРАМИ

У відповідності до технічного завдання програма “АС Готель” повинна забезпечувати облік даних про клієнтів та номерів готелю і можливість отримання інформації, вибраної за певними властивостями, а також формування звітів у вигляді стандартизованих паперових документів.

На основі проведеного аналізу предметної області встановлено, що облік клієнтів та кімнат ведеться у вигляді декількох основних паперових форм:

журнал реєстрації клієнтів (їх приїзд, від'їзд);

інформація про клієнтів (борг, заплачено клієнтом );

загальний список клієнтів та номерів готелю.

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

При звільненні номеру готелю клієнтом в журналі реєстрації, вказується дата і номер кімнати , прізвище та ініціали працівника, додаткові відомості.

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

Для кожного клієнта заповнюється картка обліку, що представляє собою паперовий документ, у якому вказується:

прізвище, ім'я, по батькові;

дата приїзду;

номер кімнати ;

дата від'їзду;

нарахування за послуги, сплата та борг;

документ що засвідчує особу;

номер паспорту чи посвідчення;

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

При від'їзді клієнта з готелю картка залишається на обліку деякий час по бажанню власника.

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

Загальний список працівників включає наступне:

прізвище та ініціали працівника;

дата приїзду;

номер кімнати;

дата від'їзду;

нараховані за послуги та борги ;

документ що засвідчує особу;

номер паспорту чи посвідчення;

Іншими паперовими документами, які повинні формуватися періодично або за вимогою є наступні:

Список клієнтів, які в даний час проживають в готелі;

Розрахунковий чек клієнта;

Список боржників;

Список вільних номерів;

Зведені дані за місяць.

Всі перераховані паперові документи завіряються підписами власником, або відповідальних осіб.

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

2. ОПИС СТРУКТУР ТА МЕТОДІВ ОБРОБКИ ДАНИХ

2.1 ОБҐРУНТУВАННЯ ВИБОРУ МЕТОДІВ ТА ЗАСОБІВ ОБРОБКИ ДАНИХ

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

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

Одним із самих розповсюджених форматів даних є формат таблиць баз даних Paradox, крім того обрана система програмування спеціалізована саме під цей формат і надає більше засобів для на лаштування таблиць баз даних при їх створенні. Тому саме формат таблиць баз даних Paradox використовується в даній системі. Створення файлів таблиць бази даних та визначення їх структури здійснюється за допомогою утиліти Database Desktop, яка входить до складу програмного комплекту Delphi.

Для обробки даних на рівні запитів використовується мова SQL, яка є стандартною мовою для побудови структурованих запитів у базах даних.

Для створення звітів використовується генератор звітів QuickReport фірми QuSoft, компоненти якого представлені окремим додатком програмного середовища Delphi.

Для забезпечення прискорення виконання операцій пошуку і вибірки даних, а також незалежності від шляху розташування фалів бази даних на дисках комп'ютерів користувачів, базі даних ставиться у співвідношення псевдонім (загальне ім'я бази даних), який створюється і обробляється за допомогою спеціалізованої утиліти BDE Administrator.

2.2 ОПИС СТРУКТУР ДАНИХ

Як було зазначено вище основними структурними елементами даних є файли таблиць бази даних у форматі Paradox. Нижче наведено перелік цих файлів із вказівкою назви файлу, структури полів та пояснень, що до призначення файлу. Для збереження файлів таблиць використовують каталог С:\praktika .

komnata.db - файл, у якому зберігається загальна інформація про номери готелю. Структура полів файлу komnata.db наведена у таблиці 2.1.

Таблиця 2.1 Структура полів файлу komnata.db

Назва поля

Тип

Інформаційний зміст

In_def

Autoincrement

Індитифікатор для полів у таблиці

Nomer

Number

Номер кімнати

Klas

Alpha

Клас кімнати

Taruf

Money

Тариф кімнати

Zainatist

Logical

Відображає чи зайнятий номер готелю

klient.db - файл, який відтворює структуру книги реєстрації клієнтів.Структура полів файлу klient.db наведена у таблиці 2.2.

Таблиця 2.2 Структура полів файлу klient.db

Назва поля

Тип

Інформаційний зміст

In_def

Autoincrement

Індитифікатор для полів у таблиці

Fio

Alpha

Прізвище ім'я по батькові клієнта

Doc

Alpha

Документ що засвідчує особу

Seria

Alpha

Серія та номер документу

Data_pos

Data

Дата поселення

Data_vus

Data

Дата виселення

Nomer

Number

Номер кімнати у готелі

Zaplacheno

Money

Заплачено клієнтом

3. ОПИС АЛГОРИТМУ ФУНКЦІОНУВАННЯ ПРОГРАМНОГО ЗАБЕЗПЕЧЕННЯ

Інформаційна модель системи

Інформаційна модель відображує загальний склад інформаційних об'єктів автоматизованої системи, яка проектується та зв'язки між ними. Структура інформаційної моделі системи наведена на рис. 3.1.

Рис. 3.1. Інформаційна модель системи

4. ОСНОВНА ЧАСТИНА ПРОГРАМИ

Модульна структура програмного засобу

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

Размещено на http://www.allbest.ru/

[Введите текст]

Таблиця 4. Призначення програмних модулів

№ з/п

Позначення

Призначення

1

Unit1

Головний модуль програми. Містить головну форму і забезпечує перехід з однієї форми на іншу

2

Unit2

Модуль довідника загальних даних. Містить форму для введення і редагування загальних даних для обліку клієнтів.

3

Unit3

Модуль довідника загальних даних. Містить форму для введення і редагування загальних даних для обліку кімнат в готелі.

4

Unit4

Модуль формування запиту про вільні кімнати у готелі.

5

Unit5

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

6

Unit6

Модуль перегляду інформації про клієнтів що виїхам

7

Unit7

Модуль перегляду інформації про клієнтів що проживають у вказаний термін

8

Unit8

Модуль формування запиту по боржниках.

9

Unit9

Модуль формування пошуку за прізвищем.

10

Unit10

Модуль формування пошуку за номером кімнати.

11

Unit11

Модуль формування звіту “Вільні номери”

12

Unit12

Модуль формування звіту “Зведенні дані”

13

Unit13

Модуль формування звіту “Боржники”

15

Unit15

Модуль формування звіту “Чек”

5. ОСНОВНА ЧАСТИНА

Опис програмних модулів

Модуль “Main

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

Екранна форма модуля в режимі конструювання зображена на нижче Рис.4.1

Рис.4.1 Екранна форма модуля Main в режимі конструювання

Програмна специфікація модуля Main наведена у таблиці

Таблиця 5. Програмна специфікація модуля Main

Компонент програми

Позначення

Зміст

1

2

3

Стандартні модулі

Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs, Menus, StdCtrls;

Стандартні модулі, з якими встановлюється зв'язок

Візуальні компонети

MainMenu1: TMainMenu;

Програмне меню, яке забезпечує перехід на інші програмні форми

N1: TMenuItem;

Пункт меню “ Введення інформації”

N2: TMenuItem;

Підпункт “ Клієнти” пункту меню “ Введ.інфор.”

N3: TMenuItem;

Підпункт “ Кімнати” пункту меню “ Введ.інфор.”

N4: TMenuItem;

Пункт меню “ Інформація”

N5: TMenuItem;

Пункт меню “ Пошук”

N6: TMenuItem;

Пункт меню “ Звіти”

N7: TMenuItem;

Підпункт “ Допомога”

N8: TMenuItem;

Підпункт “Вільні номери” пункту меню “ Інформація”

N9: TMenuItem;

Підпункт “ Хто проживає” пункту меню “ Інформація”

N10: TMenuItem;

Пункт меню “ Хто виїхав”пункту меню «Інформація»

N11: TMenuItem;

Підпункт “ Боржники” пункту меню “ Інформація”

N12: TMenuItem;

Підпункт “ Термін” пункту меню “ Інформація”

N13: TMenuItem;

Підпункт “ За прізвищем” пункту меню “ Пошук”

N14: TMenuItem;

Підпункт “ За номером” пункту меню “ Пошук”

N15: TMenuItem

Підпункт “ Вільні номери” пункту меню “ Звіти”

N16: TMenuItem

Підпункт “ Боржники” пункту меню “ Звіти”

N17: TMenuItem

Підпункт “ Зведені дані” пункту меню “ Звіти”

Модуль Клієнти призначений для введення інформації про абонентів.

Рис. 4.3 екранна форма модуля Клієнти в режимі виконання програми

Екранна форма модуля в режимі конструювання зображена на Рис. 4.4

Рис. 4.4 екранна форма модуля Клієнти в режимі конструювання

Програмна специфікація модуля Клієнти наведена у таблиці

Таблиця 6. Програмна специфікація модуля Клієнти

Компонент програми

Позначення

Зміст

1

2

3

Стандартні модулі

Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,

ExtCtrls, DBCtrls, Grids, DBGrids, DBTables, Db, StdCtrls, Mask;

Стандартні модулі, з якими встановлюється зв'язок

Модулі програміста

Main, Kartka_kliyenta, Find;

Розроблені модулі, з якими встановлюється зв'язок

Візуальні компонети

DBEdit1 : TDBEdit

Поле для введення ПІБ

DBEdit2 : TDBEdit

Поле для введення серії документа

DBEdit3 : TDBEdit

Поле для введення дати поселення

DBEdit4 : TDBEdit

Поле для дати виселення

DBEdit5 : TDBEdit

Поле для суми оплати

DBGrid1: TDBGrid;

Для перегляду і редагування інформації про абонента

DBComboBox1: TDBComboBox;

Поле для введення документа

DBLookupComboBox1: TDBLookupComboBox;

Поле для введення номеру кімнати

Button1: TButton;

Кнопка, для обновлення

DBNavigator: TDBNavigator

Група кнопок для управління введенням інформації про клієнта

Label1: TLabel;

Містить назву поля DBEdit1

Label2: TLabel;

Містить назву поля ComboBox1

Label3: TLabel;

Містить назву поля DBEdit3

Label4: TLabel;

Містить назву поля DBEdit4

Label5: TLabel;

Містить назву поля DBEdit5

Label6: TLabel;

Містить назву поля “ DBLookupComboBox1”

Label8: TLabel;

Містить назву «Заплачено»

procedure Button1Click(Sender: TObject);

Формування запиту для створення обновлення даних

Модуль Кімнати.

Рис. 4.5 екранна форма модуля Кімнати в режимі виконання програми

Екранна форма модуля в режимі конструювання зображена на Рис. 4.6

Рис. 4.6 екранна форма модуля Кімнати в режимі конструювання

Програмна специфікація модуля Кімнати наведена у таблиці

Таблиця 7. Програмна специфікація модуля Unit3

Компонент програми

Позначення

Зміст

1

2

3

Стандартні модулі

Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,

DBTables, Db, ExtCtrls, DBCtrls, Grids, DBGrids, StdCtrls, Mask;

Стандартні модулі, з якими встановлюється зв'язок

Модулі програміста

Main;

Розроблені модулі, з якими встановлюється зв'язок

Візуальні компоненти

DBNavigator1: TDBNavigator

Група кнопок для управління введення даних

procedure FormСreate(Sender: TObject; var Action: TCloseAction);

Перехід на таблицю

Процедури

Модуль Вільні кімнати призначений для введення назв вулиць.

Рис. 4.7 екранна форма модуля Вільні кімнати в режимі виконання програми

Рис. 4.8 екранна форма модуля Вільні кімнати в режимі конструювання

Таблиця 8. Програмна специфікація модуля Вільні кімнати

Компонент програми

Позначення

Зміст

1

2

3

Стандартні модулі

Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,

Grids, DBGrids, DBTables, Db, StdCtrls, Mask, DBCtrls, ExtCtrls;

Стандартні модулі, з якими встановлюється зв'язок

Модулі програміста

Main;

Розроблені модулі, з якими встановлюється зв'язок

Візуальні компонети

DBGrid1: TDBGrid;

Перегляд і редагування

procedure FormClose(Sender: TObject; var Action: TCloseAction);

Перехід на головну форму

Процедури

Модуль Пошук призначений для пошуку абонентів.

Рис. 4.9 екранна форма модуля Пошук в режимі виконання програми

Рис. 4.10 екранна форма модуля Пошук в режимі конструювання

Таблиця 9. Програмна специфікація модуля Пошук

Компонент програми

Позначення

Зміст

1

2

3

Стандартні модулі

Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,

StdCtrls, Db, DBTables, Grids, DBGrids;

Стандартні модулі, з якими встановлюється зв'язок

Модулі програміста

Main, Чек;

Розроблені модулі, з якими встановлюється зв'язок

DBLookupComboBox

Поле для введення ПІБ

DBComboBox

Поле для введення документу

Edit1: TEdit;

Поле для введення № серії

Edit2: TEdit;

Поле для введення дати поселення

Edit3: TEdit;

Поле для введення дати виселення

DBEdit:TEdit;

Містить номер кімнати

Edit4:TEdit;

Містить суму оплати

Button1: TButton;

Видача чеку клієнтові

Процедури

procedure FormActivate

(Sender: TObject);

Виконання запиту на знаходження кількості клієтів

FormClose(Sender: TObject; var Action: TCloseAction);

Перехід на головну форму і оновлення бази даних

Button1Click(Sender: TObject)

Виконання запиту чек

Модуль Зведені дані

Рис. 4.11 екранна форма модуля Зведені дані в режимі виконання програми

Рис.12 екранна форма модуля Зведені дані в режимі конструювання

Таблиця 10. Програмна специфікація модуля Зведені дані

Компонент програми

Позначення

Зміст

1

2

3

Стандартні модулі

Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,

quickrpt, Qrctrls, ExtCtrls, StdCtrls, DBCtrls;

Стандартні модулі, з якими встановлюється зв'язок

Модулі програміста

Клієнти;

Розроблені модулі, з якими встановлюється зв'язок

Візуальні компонети

QuickRep1: TQuickRep;

Компонент, що генерує звіт

QRLabel1: TQRLabel

Заголовок звіту

QRLabel2: TQRLabel

Назва поля “Оплата”

QRLabel3: TQRLabel

Назва поля "Дата виселення”

QRLabel4: TQRLabel

Назва поля “Дата поселення”

QRLabel5: TQRLabel

Назва поля “№ докум”

QRLabel6: TQRLabel

Назва поля “Серія”

QRLabel7: TQRLabel

Назва “Документ”

QRLabel8: TQRLabel

Назва поля “ПІБ”

QRLabel9: TQRLabel

Назва поля “Всьго заплачено”

QRDBText1: TQRDBText

Fio

QRDBText2: TQRDBText

Doc

QRDBText3: TQRDBText

Seria

QRDBText4: TQRDBText

Nomer

QRDBText5: TQRDBText

Data_pos

QRDBText6: TQRDBText

Data_vus

QRDBText7: TQRDBText

zaplacheno

ВИСНОВОК

Навчальна програма «Готель» була виконана в повному обсязі. В процесі розробки були реалізовані всі задачі, описані в технічному завданні.

Необхідно звернути увагу на процес встановлення програми: програма встановлюється автоматично на диск C:\PROGRAM FILES\Gotel. Для того, щоб видалити програму з ПК необхідно в панелі керування вибрати програму Gotel і натиснути кнопку видалення.

СПИСОК ВИКОРИСТАНИХ ДЖЕРЕЛ

1. Н.Б. Культін «Delphi 6 Програмирование на Object Pascal»

2. Є. Гофман, А. Д. Хомоненко «Delphi 6»

3. Сборник советов по Delphi

ТЕХНІЧНЕ ЗАВДАННЯ НА РОЗРОБКУ ПРОГРАМНОГО ЗАСОБУ

1. Загальні положення

1.1 Найменування програмного засобу

Повне найменування програмної розробки: "Автоматизована система обліку “Готель”, надалі іменована як "програма". Коротка назва програми - "Готель".

1.2 Призначення розробки та область застосування

Програма "Готель" призначена для автоматизації обліку номерів і клієнтів готелю, забезпечує можливість реєстрації нового клієнта, внесення проточних змін в особисті дані клієнтів і загальні дані, збереження даних про клієнтів, що виїхали, а також одержання поточних та статистичних даних за номерами кімнат, формування списків боржників, вільних кімнат, клієнтів, що проживають в даний час або в заданий термін, клієнтів, що виїхали, і звітів (“Список клієнтів, які в даний час проживають в готелі”, “Розрахунковий чек клієнта”, “Список боржників”, “Список вільних номерів”, “Зведені дані за місяць”) у паперовій формі. Програма може бути застосована у готелях середньою чисельністю клієнтів та номерів (кілька десятків).

1.3 Найменування розроблювача і замовника

Розроблювач даного програмного продукту - студентка групи П-308 Герасименко Катерина, надалі іменована як "розроблювач ".

Замовник програмного продукту - Циклова комісія “Програмування для ЕОТ і автоматизованих систем” Бердичівського колледжу промисловості, економіки та права, в особі викладача Тростянського Бориса Генадійовича.

2. Підстава для розробки

2.1 Документ, на підставі якого ведеться розробка

Робота ведеться на підставі завдання на курсове проектування по дисципліні “Технологія розробки програмного забезпечення”

2.2 Організація, що затвердила цей документ, і дата його затвердження

Завдання затверджене на засіданні циклової комісії “Програмування для ЕОТ і автоматизованих систем” Бердичівського політехнічного коледжу і видано викладачем Тростянським Борисом Генадійовичем .

3. Вимоги до програми

3.1 Вимоги до функціональних характеристик

3.1.1 Склад виконуваних функцій

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

Програма повинна мати можливість автозаповнення або підстановки даних у визначені поля (номер, прізвище, ) для прискорення роботи.

Програма повинна надавати можливість відслідковувати дані: боржники, вільні номери, клієнти, що виїхали, що проживають тепер або в заданий термін.

Програма повинна автоматично розраховувати нарахування клієнту за послуги, та заборгованість.

Програма повинна забезпечувати коректне введення та перевірку інформації на відповідність типу.

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

Програма повинна мати можливість настроювання необхідних параметрів роботи (загальнопрограмні константи, шляхи збереження файлів і т.д.).

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

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

Програма повинна мати розгалужену довідкову систему, з можливістю отримання довідки у різних режимах.

Встановлення програми повинне виконуватися з використанням інсталяційного пакету.

3.1.2 Організація вхідних і вихідних даних

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

Введення оперативних даних повинно виконуватися з використанням діалогових екранних форм, побудованих на основі візуальних компонентів.

Дані, які підлягають збереженню повинні зберігатися у вигляді таблиць баз даних у форматі PARADOX.

3.1.3 Часові характеристики і розмір пам'яті, необхідної для роботи програми

Обсяг оперативної пам'яті, необхідний для роботи програми не повинний перевищувати 10 Мбайт.

Дисковий простір, необхідний для збереження програми і файлів даних не повинен перевищувати 10 Мбайт (для 100 записів таблиць бази даних).

В архівному вигляді файли початкового коду програми, баз даних і довідкової системи не повинні перевищувати 8 Мбайт.

Розмір інсталяційного пакету програми, який включає базову програму і програми для підтримки її роботи не повинен перевищувати 10 Мбайт.

3.2 Вимоги до надійності

3.2.1 Вимоги до надійного функціонування

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

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

Програма повинна забезпечувати архівне збереження накопичених даних на зовнішніх або мережних носіях інформації.

Програма повинна забезпечувати коректну обробку виняткових ситуацій.

3.2.2 Контроль вхідної і вихідної інформації

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

Обробка виняткових ситуацій, пов'язаних із доступом до дисків, пристроїв введення - виведення інформації, повинна оброблятися програмно з виведенням відповідних інформаційних повідомлень, і не призводити до блокування роботи програми.

3.2.3 Час відновлення після відмови

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

3.3 Умови експлуатації і збереження

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

3.4 Вимоги до інформаційної і програмної сумісності

3.4.1 Вимоги до інформаційних структур на вході і виході

Вимоги до інформаційних структур на вході і виході визначені в п. 3.1.2.

3.4.2 Вимоги до методів рішення і мов програмування

Вибір методів рішення здійснюється розроблювачем без узгодження з замовником. Розробка програми повинна вестися на одній з наступних мов і з використанням засобів програмування:

Visual FoхPro;

Borland Delphi.

3.4.3 Вимоги до системних програмних засобів

Програма повинна працювати під управлінням операційної системи Windows 9х, Windows 200х, Windows XP.

Для забезпечення функціонування програми до складу системного програмного забезпечення повинен входити драйвер принтера відповідного типу (з урахуванням моделі принтера і встановленої версії операційної системи), архіватор ZIP або RAR.

3.5 Вимоги до складу і параметрів технічних засобів

Вимоги до складу технічних засобів:

персональний комп'ютер (ПК) у базовій конфігурації;

пристрій для роботи з компакт дисками, якщо передбачено встановлення програми з CD;

принтер формату А4.

Системні параметри ПК визначаються типом операційної системи, обумовленої у п. 4.3.3. з урахуванням ресурсів, необхідних для підтримки роботи самої програми. Рекомендовані мінімальні характеристики технічних засобів, які забезпечують ефективну роботу програми у будь якому із вказаних системних програмних середовищ:

процесор - Pentium II з тактовою частотою 350 МГц;

оперативна пам'ять - 64 Mбайт;

обсяг дискової пам'яті - 2 Гбайт.

4. Вимоги до програмної документації

Програмна документація повинна включати наступні документи:

“Інструкція по інсталяції (встановленню) програми”, складається з опису інсталяційного пакету, переліку етапів інсталяції та їх послідовності, шляху інсталяції, розміру інсталяційного пакету та програмних файлі після інсталяції;

“Керівництво користувача”, складається з опису послідовності завантаження програми, основних режимів роботи, основних екранних форм та їх структури, переліку виняткових ситуацій та реакції користувача на них, контрольні приклади;

“Керівництво адміністратора баз даних”, складається з опису складу таблиць бази даних та доступів до них (список користувачів, їх права і паролі), опису та послідовності робіт по обслуговуванню бази даних (архівування, резервне ковпіювання, з вказівкою періодичності виконання та засобів, що для цього використовуються).

5. Техніко - економічні показники

Техніко-економічні показники визначаються замовником без участі виконавця.

6. Стадії та етапи розробки

Стадії та етапи розробки програми, та терміни їх виконання повинні відповідати затвердженому графіку курсового проектування.

7. Порядок контролю і приймання

Основними формами контролю виконання проекту є - поточний, проміжковий і підсумковий.

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

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

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

На основі результатів підсумкового контролю комісія робить висновок про приймання або неприймання проекту, з оформленням відповідного акту (рецензії) на виконану роботу.

КОДИ ПРОГРАМНИХ МОДУЛІВ

unit Main;

unit Unit1;

interface

uses

Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,

Menus, Db, DBTables, StdCtrls, Mask, DBCtrls, Grids, DBGrids;

type

TForm1 = class(TForm)

MainMenu1: TMainMenu;

N1: TMenuItem;

N2: TMenuItem;

N3: TMenuItem;

N5: TMenuItem;

N6: TMenuItem;

N7: TMenuItem;

N8: TMenuItem;

N9: TMenuItem;

N10: TMenuItem;

N11: TMenuItem;

N12: TMenuItem;

N13: TMenuItem;

N14: TMenuItem;

N15: TMenuItem;

N17: TMenuItem;

Label1: TLabel;

Label2: TLabel;

Label3: TLabel;

N20: TMenuItem;

N4: TMenuItem;

N16: TMenuItem;

N18: TMenuItem;

procedure N2Click(Sender: TObject);

procedure N3Click(Sender: TObject);

procedure N6Click(Sender: TObject);

procedure N7Click(Sender: TObject);

procedure N11Click(Sender: TObject);

procedure N8Click(Sender: TObject);

procedure N9Click(Sender: TObject);

procedure N10Click(Sender: TObject);

procedure N12Click(Sender: TObject);

procedure N14Click(Sender: TObject);

procedure N17Click(Sender: TObject);

procedure FormCreate(Sender: TObject);

procedure N19Click(Sender: TObject);

procedure N15Click(Sender: TObject);

procedure N16Click(Sender: TObject);

procedure N18Click(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

var

Form1: TForm1;

implementation

uses Unit2, Unit3, Unit4, Unit5, Unit7, Unit6, Unit8, Unit9, Unit10, Unit11,

Unit12, Unit13, Unit15, Unit14, Unit16;

{$R *.DFM}

procedure TForm1.N2Click(Sender: TObject);

begin

form2.showmodal; //введення інформації про клієнти

end;

procedure TForm1.N3Click(Sender: TObject);

begin

form3.showmodal;//введення інформації про кімнати у готелі

end;

procedure TForm1.N6Click(Sender: TObject);

begin

form4.showmodal;//відображення вільних номерів

end;

procedure TForm1.N7Click(Sender: TObject);

begin

form5.showmodal;//відображення тих хто проживає

end;

procedure TForm1.N11Click(Sender: TObject);

begin

form7.showmodal;//термін

end;

procedure TForm1.N8Click(Sender: TObject);

begin

form6.showmodal;//хто з клієнтів виїхав

end;

procedure TForm1.N9Click(Sender: TObject);

begin

form8.showmodal;//боржники

end;

procedure TForm1.N10Click(Sender: TObject);

begin

form9.showmodal;//пошук за прізвижем

end;

procedure TForm1.N12Click(Sender: TObject);

begin

form10.showmodal;//пошук за номером

end;

procedure TForm1.N14Click(Sender: TObject);

begin

form11.QuickRep1.Preview; //вільні номери

end;

procedure TForm1.N17Click(Sender: TObject);

begin

form12.QuickRep1.DataSet:=form12.Query1;//зведенні дані

form12.QuickRep1.Preview;

end;

procedure TForm1.FormCreate(Sender: TObject);

begin

with Session do

begin

configmode:=cmsession;

try

AddStandardAlias('d',ExtractFilePath(ParamStr(0)),'PARADOX');

finally

configmode:=cmall;

end;

end;end;

procedure TForm1.N19Click(Sender: TObject);

begin

winhelp(handle,'sqroot.hlp',help_context,7);

end;

procedure TForm1.N15Click(Sender: TObject);

begin

borg.QuickRep1.Preview;//боржники

end;

procedure TForm1.N16Click(Sender: TObject);

begin

form14.showmodal;

end;

procedure TForm1.N18Click(Sender: TObject);

begin

form16.showmodal;

end;

end.

unit Клієнти;

unit Unit2;

interface

uses

Windows, Messages, Classes, SysUtils, Graphics, Controls, StdCtrls, Forms,

Dialogs, DBCtrls, DB, DBTables, Mask, ExtCtrls;

type

TForm2 = class(TForm)

Table1Fio: TStringField;

Table1Doc: TStringField;

Table1Seria: TStringField;

Table1Data_pos: TDateField;

Table1Data_vus: TDateField;

Table1Nomer: TFloatField;

Table1Zaplacheno: TCurrencyField;

ScrollBox: TScrollBox;

Label1: TLabel;

EditFio: TDBEdit;

Label2: TLabel;

Label3: TLabel;

EditSeria: TDBEdit;

Label4: TLabel;

EditData_pos: TDBEdit;

Label5: TLabel;

EditData_vus: TDBEdit;

Label6: TLabel;

Label8: TLabel;

EditZaplacheno: TDBEdit;

DataSource1: TDataSource;

Panel2: TPanel;

Table1: TTable;

DBNavigator: TDBNavigator;

Button1: TButton;

DBLookupComboBox1: TDBLookupComboBox;

DataSource2: TDataSource;

Query1: TQuery;

Query2: TQuery;

DataSource3: TDataSource;

Label7: TLabel;

Label9: TLabel;

Label10: TLabel;

Label11: TLabel;

Label12: TLabel;

Label13: TLabel;

DataSource4: TDataSource;

Query3: TQuery;

DBComboBox1: TDBComboBox;

procedure FormCreate(Sender: TObject);

procedure Button1Click(Sender: TObject);

procedure DBLookupComboBox1Click(Sender: TObject);

procedure FormActivate(Sender: TObject);

private

{ private declarations }

public

{ public declarations }

end;

var

Form2: TForm2;

implementation

uses Unit15;

{$R *.DFM}

procedure TForm2.FormCreate(Sender: TObject);

begin

Table1.Open;

form2.Table1Data_pos.EditMask:='90\.90\.0000;1;_';

form2.Table1Data_vus.EditMask:='90\.90\.0000;1;_' ;

end;

procedure TForm2.Button1Click(Sender: TObject);

begin

with form2.Query2 do

begin

sql.Clear;

sql.Add( 'SELECT *');

sql.Add( 'FROM "Klient.DB" Klient') ;

sql.Add( 'WHERE Fio = "'+form2.EditFio.Text+'"');

open

end;

form15.QuickRep1.DataSet:=form2.Query2;

form15.DataSource1.DataSet:=form2.Query2;

form15.QRDBText1.DataSet:=form2.Query2;

form15.QRDBText2.DataSet:=form2.Query2;

form15.QRDBText3.DataSet:=form2.Query2;

form15.QuickRep1.Refresh;

form15.QuickRep1.Preview;

end;

procedure TForm2.DBLookupComboBox1Click(Sender: TObject);

begin

with form2.Query3 do

begin

sql.Clear;

sql.Add( 'update "Komnata.DB"');

sql.Add( 'set zainatist=true') ;

sql.Add( 'WHERE nomer = "'+form2.DBLookupComboBox1.Text+'"');

end;

query3.ExecSQL;

end;

procedure TForm2.FormActivate(Sender: TObject);

begin

query1.Close;query1.open;

end.

unit Кімнати;

unit Unit3;

interface

uses

Windows, Messages, Classes, SysUtils, Graphics, Controls, StdCtrls, Forms,

Dialogs, DBCtrls, DB, DBTables, Mask, ExtCtrls;

type

TForm3 = class(TForm)

Table1Nomer: TFloatField;

Table1Klas: TStringField;

Table1Taruf: TCurrencyField;

Table1Zainatist: TBooleanField;

ScrollBox: TScrollBox;

Label1: TLabel;

EditNomer: TDBEdit;

Label2: TLabel;

EditKlas: TDBEdit;

Label3: TLabel;

EditTaruf: TDBEdit;

Label4: TLabel;

CheckBoxZainatist: TDBCheckBox;

DataSource1: TDataSource;

Panel2: TPanel;

Table1: TTable;

DBNavigator: TDBNavigator;

Label7: TLabel;

Label9: TLabel;

Label10: TLabel;

Label11: TLabel;

Label12: TLabel;

Label13: TLabel;

procedure FormCreate(Sender: TObject);

procedure DBNavigatorClick(Sender: TObject; Button: TNavigateBtn);

procedure FormDeactivate(Sender: TObject);

private

{ private declarations }

public

{ public declarations }

end;

var

Form3: TForm3;

implementation

{$R *.DFM}

procedure TForm3.FormCreate(Sender: TObject);

begin

Table1.Open;

end;

procedure TForm3.DBNavigatorClick(Sender: TObject; Button: TNavigateBtn);

begin

form3.Table1.Refresh;

end;

procedure TForm3.FormDeactivate(Sender: TObject);

begin

table1.Close;

table1.Open;

end.

unit Вільні кімнати;

unit Unit4;

interface

uses

Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

Dialogs, DBTables, DB, Grids, DBGrids;

type

TForm4 = class(TForm)

DBGrid1: TDBGrid;

DataSource1: TDataSource;

Query1: TQuery;

procedure FormActivate(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

var

Form4: TForm4;

implementation

uses Unit11;

{$R *.dfm}

procedure TForm4.FormActivate(Sender: TObject);

begin

query1.Close;query1.open;

end.

unit Пошук за прізвищем;

unit Unit9;

interface

uses

Windows, Messages, Classes, SysUtils, Graphics, Controls, StdCtrls, Forms,

Dialogs, DBCtrls, DB, DBTables, Mask, ExtCtrls, Grids, DBGrids;

type

TForm9 = class(TForm)

ScrollBox: TScrollBox;

DataSource1: TDataSource;

Panel2: TPanel;

DBLookupComboBox2: TDBLookupComboBox;

Label1: TLabel;

Button1: TButton;

DataSource2: TDataSource;

Table1: TTable;

Table1In_def: TAutoIncField;

Table1Fio: TStringField;

Table1Doc: TStringField;

Table1Seria: TStringField;

Table1Data_pos: TDateField;

Table1Data_vus: TDateField;

Table1Nomer: TFloatField;

Table1Taruf: TCurrencyField;

Table1Zaplacheno: TCurrencyField;

Query1: TQuery;

DBNavigator1: TDBNavigator;

DBComboBox1: TDBComboBox;

EditSeria: TDBEdit;

EditData_pos: TDBEdit;

EditData_vus: TDBEdit;

EditZaplacheno: TDBEdit;

DBEdit1: TDBEdit;

Label2: TLabel;

Label3: TLabel;

Label4: TLabel;

Label5: TLabel;

Label6: TLabel;

Label8: TLabel;

Label9: TLabel;

Label10: TLabel;

Label11: TLabel;

Label12: TLabel;

procedure FormClose(Sender: TObject; var Action: TCloseAction);

procedure Button1Click(Sender: TObject);

procedure DBLookupComboBox2Click(Sender: TObject);

procedure FormActivate(Sender: TObject);

private

{ private declarations }

public

{ public declarations }

end;

var

Form9: TForm9;

implementation

uses Unit15;

{$R *.DFM}

procedure TForm9.FormClose(Sender: TObject; var Action: TCloseAction);

begin

form9.table1.Refresh;

end;

procedure TForm9.Button1Click(Sender: TObject);

begin

form15.QuickRep1.DataSet:=form9.Query1;

form15.DataSource1.DataSet:=form9.Query1;

form15.QRDBText1.DataSet:=form9.Query1;

form15.QRDBText2.DataSet:=form9.Query1;

form15.QRDBText3.DataSet:=form9.Query1;

form15.QuickRep1.Refresh;

form15.QuickRep1.Preview;

end;

procedure TForm9.DBLookupComboBox2Click(Sender: TObject);

begin

with form9.Query1 do

begin

sql.Clear;

sql.Add( 'SELECT Fio, doc, seria, data_pos, data_vus, nomer,zaplacheno');

sql.Add( 'FROM "Klient.DB" Klient') ;

sql.Add( 'WHERE Fio like "'+form9.DBLookupComboBox2.Text+'"');

open

end;

Table1Data_pos.EditMask:='90\.90\.0000;1;_';

Table1Data_vus.EditMask:='90\.90\.0000;1;_' ;

form9.EditSeria.enabled:=true;

form9.DBComboBox1.enabled:=true;

form9.Editdata_vus.enabled:=true;

form9.Editdata_pos.enabled:=true;

form9.Editzaplacheno.enabled:=true;

form9.DBEdit1.enabled:=true;

form9.DBNavigator1.enabled:=true;

form9.Button1.Enabled:=true;

end;

procedure TForm9.FormActivate(Sender: TObject);

begin

form9.EditSeria.Text:='';

form9.DBComboBox1.Text:='';

form9.Editdata_vus.Text:='';

form9.Editdata_pos.Text:='';

form9.Editzaplacheno.Text:='';

form9.DBEdit1.Text:='';

form9.EditSeria.enabled:=false;

form9.DBComboBox1.enabled:=false;

form9.Editdata_vus.enabled:=false;

form9.Editdata_pos.enabled:=false;

form9.Editzaplacheno.enabled:=false;

form9.DBEdit1.enabled:=false;

form9.DBNavigator1.enabled:=false;

form9.Button1.Enabled:=false;

end.

unit Зведені дані;

unit Unit12;

interface

uses

Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,

Db, DBTables, ExtCtrls, QuickRpt, Qrctrls;

type

TForm12 = class(TForm)

QuickRep1: TQuickRep;

DataSource1: TDataSource;

QRBand1: TQRBand;

QRLabel1: TQRLabel;

QRBand2: TQRBand;

QRDBText1: TQRDBText;

QRDBText2: TQRDBText;

QRDBText3: TQRDBText;

QRDBText4: TQRDBText;

QRDBText5: TQRDBText;

QRDBText6: TQRDBText;

Query1: TQuery;

QRLabel8: TQRLabel;

QRLabel7: TQRLabel;

QRLabel6: TQRLabel;

QRLabel5: TQRLabel;

QRLabel4: TQRLabel;

QRLabel3: TQRLabel;

QRLabel2: TQRLabel;

QRDBText7: TQRDBText;

QRShape1: TQRShape;

QRShape2: TQRShape;

QRShape3: TQRShape;

QRShape4: TQRShape;

QRShape5: TQRShape;

QRShape6: TQRShape;

QRShape8: TQRShape;

QRBand3: TQRBand;

QRExpr1: TQRExpr;

QRLabel9: TQRLabel;

QRShape9: TQRShape;

QRShape10: TQRShape;

QRShape11: TQRShape;

QRShape12: TQRShape;

QRShape13: TQRShape;

QRShape14: TQRShape;

QRShape15: TQRShape;

QRShape7: TQRShape;

QRShape16: TQRShape;

QRShape17: TQRShape;

QRShape18: TQRShape;

QRShape19: TQRShape;

QRShape20: TQRShape;

QRShape21: TQRShape;

QRShape22: TQRShape;

QRShape23: TQRShape;

QRShape24: TQRShape;

private

{ Private declarations }

public

{ Public declarations }

end;

var

Form12: TForm12;

implementation

{$R *.DFM}

end.

Размещено на Allbest.ru


Подобные документы

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.