КАТЕГОРИИ:
АстрономияБиологияГеографияДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРиторикаСоциологияСпортСтроительствоТехнологияФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника
|
Характеристики системи3.1 Функціональні вимоги: 1) Продукт повинен дозволяти вводити дані про клієнтів( ПІБ, Телефон Адреса), працівників( ПІБ, Телефон Адреса), філіали(Назва філіалу, Адреса, Телефон), договори(Код договору, Код клієнта, Дата), квитанції(Код квитанції, Код філіалу, Код клієнта, Код працівника, ПІБ клієнта, ПІБ працівника, Сума, Дата до оплати); 2) Продукт повинен дозволяти виводити дані про клієнтів, працівників, філіали, договори, квитанції; 3) Продукт повинен дозволяти видаляти дані; 4) Продукт повинен дозволяти здійснювати пошук даних по ПІБ клієнта; 5) Продукт повинен дозволяти друкувати звіти. 4. Вимоги до зовнішніх інтерфейсів 4.1 Користувацькі інтерфейси: На інтерфейсі продукту повинно бути: 1) Головне меню; 2) Таблиця бази даних; 3) Кнопки додавання та видалення даних. 4) Кнопки пошуку даних. 5) Меню швидкого доступу. 4.2 Апаратні інтерфейси: 1) Взаємодіє з принтером. 5. Нефункціональні вимоги 5.1 Вимоги продуктивності: 1) Продукт повинен здійснювати пошук менше ніж за секунду; 2) Програма повинна бути розроблена на мові С++. 2. РОЗРОБКА ІНТЕРФЕЙСУ ПРОГРАМИ 2.1 Кроки розробки призначених для користувача інтерфейсів Для проектування інтерфейсу додатку знадобилося дізнатись інформацію про користувача, проаналізувати його рівень комп’ютерних знань та вмінь. Я проаналізувала можливих користувачів, які будуть користуватися додатком та вивела інформацію в окрему таблицю, табл.2.1 Табл. 2.1 - Характеристика користувача
2.2 Проектування інтерфейсу Проектування інтерфейсу виконано в середовищі C++Builder 6, в такому процесі: 1) Вікно головної форми КП «ВодГео»: Додаю на Form1 MainMenu, ToolBar, StatusBar,Memo1; Натиснувши 2 рази на MainMenu прописую назви кнопок швидкого доступу. На ToolBar за допомогою команди NewButton додаю 11 кнопок, для швидкого доступу до інших вікон. Додаю на форму ImageList, натискаю 2 рази і за допомогою команди Add додаю зображення з розширенням *.bmp. У властивостях ToolBar змінюю такі властивості: DisabledImages, HotImages, Images на ImageList1. Потім у властивості ImageIndex вибираю потрібний номер картинки для кнопки і прописую відповідний для неї код. У властивості Lines компонента Memo1 прописую «Інструкцію для користувача». Зберігаю результати, додаток 2. 2) Вікно «Клієнти «КП ВодГео»: Додаю на Form1 MainMenu, ToolBar, StatusBar, DBGrid, DBNavigator, Button1, Button2, RadioButton; Натиснувши 2 рази на MainMenu прописую назви кнопок швидкого доступу. На ToolBar за допомогою команди NewButton додаю 11 кнопок, для швидкого доступу до інших вікон. Додаю на форму ImageList, натискаю 2 рази і за допомогою команди Add додаю зображення з розширенням *.bmp. У властивостях ToolBar змінюю такі властивості: DisabledImages, HotImages, Images на ImageList1. Потім у властивості ImageIndex вибираю потрібний номер картинки для кнопки і прописую відповідний для неї код. Виділяю DBGrid та DBNavigator, змінюю властивість DataSource-> DataModule2->DataSource2таким чином з’єднавши їх з таблицею «Клієнти». На Button1 прописую код для пошуку інформації по виділеному стовпчику (стовпчик виділяється RadioButton) . На Button2 прописую код для фільтрації інформації по виділеному стовпчику (стовпчик виділяється RadioButton) . Зберігаю отриману форму, додаток 2. 3) Вікно «Працівники «КП ВодГео»» Додаю на Form1 MainMenu, ToolBar, StatusBar, DBGrid, DBNavigator, Button1, Button2, RadioButton; Натиснувши 2 рази на MainMenu прописую назви кнопок швидкого доступу. На ToolBar за допомогою команди NewButton додаю 11 кнопок, для швидкого доступу до інших вікон. Додаю на форму ImageList, натискаю 2 рази і за допомогою команди Add додаю зображення з розширенням *.bmp. У властивостях ToolBar змінюю такі властивості: DisabledImages, HotImages, Images на ImageList1. Потім у властивості ImageIndex вибираю потрібний номер картинки для кнопки і прописую відповідний для неї код. Виділяю DBGrid та DBNavigator, змінюю властивість DataSource-> DataModule2->DataSource2таким чином з’єднавши їх з таблицею «Клієнти». На Button1 прописую код для пошуку інформації по виділеному стовпчику (стовпчик виділяється RadioButton) . На Button2 прописую код для фільтрації інформації по виділеному стовпчику (стовпчик виділяється RadioButton) . Зберігаю отриману форму, додаток 2. 4) Вікно «Договори «КП ВодГео»» Додаю на Form1 MainMenu, ToolBar, StatusBar, DBGrid, DBNavigator, Button1, Button2, RadioButton; Натиснувши 2 рази на MainMenu прописую назви кнопок швидкого доступу. На ToolBar за допомогою команди NewButton додаю 11 кнопок, для швидкого доступу до інших вікон. Додаю на форму ImageList, натискаю 2 рази і за допомогою команди Add додаю зображення з розширенням *.bmp. У властивостях ToolBar змінюю такі властивості: DisabledImages, HotImages, Images на ImageList1. Потім у властивості ImageIndex вибираю потрібний номер картинки для кнопки і прописую відповідний для неї код. Виділяю DBGrid та DBNavigator, змінюю властивість DataSource-> DataModule2->DataSource2таким чином з’єднавши їх з таблицею «Клієнти». На Button1 прописую код для пошуку інформації по виділеному стовпчику (стовпчик виділяється RadioButton) . На Button2 прописую код для фільтрації інформації по виділеному стовпчику (стовпчик виділяється RadioButton) . Зберігаю отриману форму, додаток 2. 5) Вікно «Філіали «КП ВодГео»» Додаю на Form1 MainMenu, ToolBar, StatusBar, DBGrid, DBNavigator, Button1, Button2, RadioButton; Натиснувши 2 рази на MainMenu прописую назви кнопок швидкого доступу. На ToolBar за допомогою команди NewButton додаю 11 кнопок, для швидкого доступу до інших вікон. Додаю на форму ImageList, натискаю 2 рази і за допомогою команди Add додаю зображення з розширенням *.bmp. У властивостях ToolBar змінюю такі властивості: DisabledImages, HotImages, Images на ImageList1. Потім у властивості ImageIndex вибираю потрібний номер картинки для кнопки і прописую відповідний для неї код. Виділяю DBGrid та DBNavigator, змінюю властивість DataSource-> DataModule2->DataSource2таким чином з’єднавши їх з таблицею «Клієнти». На Button1 прописую код для пошуку інформації по виділеному стовпчику (стовпчик виділяється RadioButton) . На Button2 прописую код для фільтрації інформації по виділеному стовпчику (стовпчик виділяється RadioButton) . Зберігаю отриману форму, додаток 2. 6) Вікно «Квитанції «КП ВодГео»» Додаю на Form1 MainMenu, ToolBar, StatusBar, DBGrid, DBNavigator, Button1, Button2, RadioButton; Натиснувши 2 рази на MainMenu прописую назви кнопок швидкого доступу. На ToolBar за допомогою команди NewButton додаю 11 кнопок, для швидкого доступу до інших вікон. Додаю на форму ImageList, натискаю 2 рази і за допомогою команди Add додаю зображення з розширенням *.bmp. У властивостях ToolBar змінюю такі властивості: DisabledImages, HotImages, Images на ImageList1. Потім у властивості ImageIndex вибираю потрібний номер картинки для кнопки і прописую відповідний для неї код. Виділяю DBGrid та DBNavigator, змінюю властивість DataSource-> DataModule2->DataSource2таким чином з’єднавши їх з таблицею «Клієнти». На Button1 прописую код для пошуку інформації по виділеному стовпчику (стовпчик виділяється RadioButton) . На Button2 прописую код для фільтрації інформації по виділеному стовпчику (стовпчик виділяється RadioButton) . Зберігаю отриману форму, додаток 2. 7) Вікно звіту договорів. Додаю на форму QuickRep, TitleBand1, DetailBand1, QRLabel1, QRDBText1. У властивостях QuickRep змінюю DataSet на DataModule2->ADOTable4 (тим самим прив'язую таблицю «Договори»). На TitleBand1 додаю 3 QRLabel1 та у властивості Caption прописую назви стовпців в звіті. На DetailBand1 додаю 3 QRDBText1 та змінюю властивість DataSet на DataModule2->ADOTable4 та DataField на потрібну назву таблиці. Натискаю Preview і переглядаю створений звіт, додаток 2. 8) Вікно звіту створених квитанцій. Додаю на форму QuickRep, TitleBand1, DetailBand1, QRLabel1, QRDBText1, QRExpr1. У властивостях QuickRep змінюю DataSet на DataModule2->ADOTable5 (тим самим прив'язую таблицю «Квитанції»). На TitleBand1 додаю 3 QRLabel1 та у властивості Caption прописую назви стовпців в звіті. На DetailBand1 додаю 3 QRDBText1 та змінюю властивість DataSet на DataModule2->ADOTable5 та DataField на потрібну назву таблиці. Натискаю на QRExpr1 і у властивості Expression створюю формулу для обчислення загальної суми за день (SUM(ADOTable1.Сума)). Натискаю Preview і переглядаю створений звіт, додаток 2. 9) Вікно довідки по роботі з програмою. Додаю на форму Panel, Image, Memo. На Panel додаю Image, і у властивості Picture додаю картинку (логотип компанії). У властивостях компонента Memo змінюю Lines-> «текст довідки по роботі з програмою». Зберігаю створену форму, додаток 2. 10) Вікно довідки про програмою. Додаю на форму Panel, Image, Memo. На Panel додаю Image, і у властивості Picture додаю картинку (логотип компанії). У властивостях компонента Memo змінюю Lines-> «інформацію про розробника та версію». Зберігаю створену форму, додаток 2.
3. ВИБІР АРХІТЕКТУРИ 3.1 Встановлення зв’язку с базою даних Є три різних типи компонентів потоку даних: джерела, перетворення і цільові об'єкти. Джерела витягують дані зі сховищ, таких як таблиці та подання реляційних баз даних, файли. Перетворення змінюють, об'єднують і очищають дані. Цільові об'єкти завантажують дані у сховища або створюють набори даних у пам'яті. З'єднання компонентів потоку даних здійснюється шляхом з'єднання виходів джерел і перетворень з входами перетворень і цільових об'єктів. При створенні потоку даних зазвичай з'єднуються другий і наступні компоненти - так само, як їх додавали до потоку даних. Після з'єднання компонента вхідні стовпці можуть бути використані при налаштуванні компонента. Коли немає доступних вхідних стовпців, настройка компонента завершиться після його приєднання до потоку даних. Для з’єднання БД з середовищем C++ Builder я використовую декілька компонентів з вкладки ADO: TADOConnection, TDataSource, TADOTable. Для зв’язку з базою даних використовується компонент ADOConnection, в якому вказується шлях до потрібної бази даних та використовується драйвер «Microsoft Jet 4.0 OLE DB Provider», через нього здійснюється підключення до бази даних КП «ВодГео», Рис.1
Рис.1 Встановлення зв’язку з БД Також для зображення бази даних на формі використовується DataSource та ADOTable, потім DataSource підключається до DBGrid і виводиться обрана таблиця. З'єднаную проект з базою даних КП «ВодГео»: Додаємо на форму Data Module, на ній розміщуємо такі компоненти: ADOConnection, DataSource, ADOTable. Натиснувши 2 рази на ADOConnection вибираю потрібний драйвер, та підключаю базу даних. У властивостях DataSource : DataSet=ADOTable2 (підключила одну з таблиць бази даних до DataSource ). У властивостях ADOTable : Connection=ADOConnection; Active=true; TableName=Клієнти (підключили таблицю «Клієнти»).
3.2 Вибір сервера баз даних
Для генерації бази даних було використано сервер ODBC. Цей сервер виконує обслуговування та управління базою даних і відповідає за цілісність і збереження даних, а також забезпечує операції введення-виведення при доступі клієнта до інформації. Ці всі дії були описані в діаграмі потоків даних, що була створена в BP-win. В ній описане створення звіту, розрахунок оплати для користувача, друк договору, друк квитанції для оплати, пошук платника та виведення договору та звіту на принтер, додаток 3. За допомогою програми ER-Win було згенеровоно код для майбутньої бази даних, а вже потім за допомогою програми BatchAccess (консольна утиліта для управління базами MS Access) , в яку був занесений код з ER-Win була створена база даних «КП «ВодГео»», Рис.2. Рис.2 Створення Бази даних
|