Автоматизована система "Телефонний довідник"
Основні етапи проектування автоматизованої програми "Телефонний довідник" на основі принципів систем управління базами даних. Розробка програмних модулів, інтегрованої довідкової системи, супроводжувальних документів та створення графічного інтерфейсу.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | курсовая работа |
Язык | украинский |
Дата добавления | 22.09.2009 |
Размер файла | 1002,7 K |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
МІНІСТЕРСТВО ОСВІТИ І НАУКИ УКРАЇНИ
БЕРДИЧІВСЬКИЙ ПОЛІТЕХНІЧНИЙ КОЛЕДЖ
Курсовий проект з дисципліни
“Технологія розробки програмного забезпечення”
спеціальності 5.080405
“Програмування для ЕОТ та автоматизованих систем”
на тему
АВТОМАТИЗОВНА СИСТЕМА “ТЕЛЕФОНИЙ ДОВІДНИК”
Виконавець: студент гр. П-305
О.С. Янцов
Керівник: викладач
Б. Г. Тростянський
Бердичів 2008
РЕФЕРАТ
Курсовий проект, 45 с., 5 мал., 6 табл., 7 джерел, 5 додатків.
Дисципліна: “ТЕХНОЛОГІЯ РОЗРОБКИ ПРОГРАМНОГО ЗАБЕЗПЕЧЕННЯ”
Тема: “АВТОМАТИЗОВАНА СИСТЕМА “ТЕЛЕФОНИЙ ДОВІДНИК”.
У роботі описані процес і результати проектування автоматизованої системи “ТЕЛЕФОНИЙ ДОВІДНИК”, призначеної для автоматизації ведення записів контактних телефонів абонентів.
Результат розробки оформлений у виді програмного пакету і комплекту супроводжувальної документації.
Подальший розвиток роботи можливий у бік поліпшення зовнішнього інтерфейсу ї адаптації програми до більшої області потенційного застосування, за рахунок інтеграції з іншими програмними пакетами призначеними для автоматизації різних сфер діяльності підприємства.
Робота має навчальний характер і тому розрахунок економічної ефективності її впровадження для конкретного підприємства не виконувався.
ПЛАН
Реферат
План
Вступ
1. Аналіз предметної області і постановка задачі на розробку програми
2. Опис структур та методів оброки даних
2.1 Обґрунтування вибору методів та засобів обробки даних
2.2 Опис структур даних
3. Опис алгоритму функціонування програмного засобу
4. Основна частина програми
5. Основна частина
5.1. Опис програмних модулів
5.1.1 . Модуль “Main”
Додатки
Технічне завдання
Коди програмних модулів
Контрольні приклади
Інструкції по впровадженню і експлуатації програмного засобу
ВСТУП
Автоматичний облік є одною із основних напрямків у розробці сучасного програмного забезпечення, яке спрямоване на вирішення конкретно поставленої системи задач .
Прикладом реалізації саме такої системи є запропонований програмний засіб “АС ТЕЛЕФОНИЙ ДОВІДНИК”, призначений для автоматизації ведення записів контактних телефонів абонентів, розроблений у відповідності до завдання на курсове проектування із дисципліни “Технологія розробки програмного забезпечення”.
Основною метою даного курсового проекту є розробка розгорнутого технічного завдання на основі вивчення та аналізу заданої предметної області, розробка структур та вибір методів обробки даних, алгоритмів функціонування програмних модулів, забезпечення якісних показників роботи програми: створення зручного графічного інтерфейсу користувача, розробка інтегрованої довідкової системи та супроводжувальної документації, засобів для розгортання програмної системи в інформаційному середовищі користувачів.
Для реалізації поставленого завдання обрано сучасні інструментальні середовища і засоби програмування Borland Delphi 6.0, та відповідні засоби підтримки процесу розробки програм.
Не зважаючи на те, що проект носить навчальний характер, він має певне практичне значення і може бути застосований для автоматизації вказаної прикладної задачі на підприємствах із різною формою діяльності.
1. АНАЛІЗ ПРЕДМЕТНОЇ ОБЛАСТІ І ПОСТАНОВКА ЗАДАЧІ НА РОЗРОБКУ ПРОГРАМИ
У відповідності до технічного завдання програма “Телефонний довідник” повинна забезпечувати облік даних про користувачів телефонами і можливість отримання інформації, вибраної за певними критеріями, а також формування звітів у вигляді стандартизованих паперових документів.
На основі проведеного аналізу предметної області встановлено, що облік абонентів ведеться у вигляді довідника, в якому знаходяться дані про кожного абонента. Якщо в телефонний довідник заноситься новий абонент, то про нього вносяться відповідні дані. При вилучені абонента з телефонного довідника, вилучаються всі дані про даного абонента. Для кожного нового абонента заповнюється картка обліку, що представляє собою паперовий документ, у якому вказується:
· ПІБ
· Адреса абонента
· Наявність пільг на оплату послуг
· Номер телефону абонента
· Тип абоненту: організація, підприємство, приватна особа
На основі довідника карток особистих даних абонентів формується загальний список абонентів. Загальний список абонентів включає наступні дані:
· Загальна кількість абонентів.
· Кількість абонентів, що користуються пільгами.
У відповідності до аналізу предметної області можна зробити висновок, що задача, яка підлягає автоматизації відноситься то складу типових аналітично - облікових задач і може бути вирішена з використанням програмних та інструментальних засобів, передбачених технічним завданням, а саме з використанням елементів файл - серверних баз даних.
2. ОПИС СТРУКТУР ТА МЕТОДІВ ОБРОБКИ ДАНИХ
2.1 Обґрунтування вибору методів та засобів обробки даних
Оскільки, у відповідності до технічного завдання і аналізу предметної області, розробка автоматизованої системи телефонний довідник проводиться на основі принципів та елементів систем управління базами даних, то логічним є - збереження даних здійснювати у вигляді файлів таблиць бази даних певного типу, вибір і обробку інформації виконувати на основі запитів, для введення і відображення даних використовувати діалогові екранні форми, а вихідні паперові документи формувати у вигляді звітів.
Однією із сучасних універсальних інструментальних систем програмування є Borland Delphi 6, яка має розвинені засоби для програмування та обробки баз даних, і в той же час підтримує майже всі відомі формати даних, що при необхідності дозволить перевести створені файли даних на іншу програмну платформу.
Одним із самих розповсюджених форматів даних є формат таблиць баз даних Paradox, крім того обрана система програмування спеціалізована саме під цей формат і надає більше засобів для на лаштування таблиць баз даних при їх створенні. Тому саме формат таблиць баз даних Paradox використовується в даній системі. Створення файлів таблиць бази даних та визначення їх структури здійснюється за допомогою утиліти Database Desktop, яка входить до складу програмного комплекту Delphi.
Для обробки даних на рівні запитів використовується мова SQL92, яка є стандартною мовою для побудови структурованих запитів в операційній системі Windows.
Для створення звітів використовується генератор звітів QuickReport фірми QuSoft, компоненти якого представлені окремою вкладинкою програмного середовища Delphi.
Для забезпечення прискорення виконання операцій пошуку і вибірки даних, а також незалежності від шляху розташування фалів бази даних на дисках комп'ютерів користувачів, базі даних ставиться у співвідношення псевдонім (загальне ім'я бази даних), який створюється і обробляється за допомогою спеціалізованої утиліти BDE Administrator.
2.2 Опис структур даних
Як було зазначено вище основними структурними елементами даних є файли таблиць бази даних у форматі Paradox. Нижче наведено перелік цих файлів із вказівкою назви файлу, структури полів та пояснень, що до призначення файлу. Для збереження файлів таблиць використовують каталог C:\Program Files\TelDov\Data.
Abonenti.db - файл, у якому зберігається загальна інформація про абонентів. Структура полів файлу Abonenti.db наведена у таблиці 1.
Таблиця 1
Структура полів файлу Abonenti.db
Назва поля |
Тип |
Інформаційний зміст |
|
Priz |
Alpha |
Прізвище абонента (ключове поле) |
|
Name |
Alpha |
Ім'я абонента (ключове поле) |
|
Pbat |
Alpha |
По батькові (ключове поле) |
|
Tel |
Number |
Номер телефону абонента |
|
Vul |
Alpha |
Назва вулиці |
|
Bud |
Number |
№ будинку |
|
Kvart |
Number |
№ квартири |
|
Tup |
Alpha |
тип абоненту |
|
Pilgi |
Alpha |
пільги |
Pidpriemstva.db - файл, який виконує роль довідника підприємств і організацій. Структура полів файлу Pidpriemstva.db наведена у таблиці 2.
Таблиця 2
Структура полів файлу Pidpriemstva.db
Назва поля |
Тип |
Інформаційний зміст |
|
Pidpr |
Alpha |
назва організації, підприємства(ключове поле). |
Vulici.db - файл, який виконує роль довідника назв вулиць. Структура полів файлу Vulici.db наведена у таблиці 3.
Таблиця 3
Структура полів файлу Vulici.db
Назва поля |
Тип |
Інформаційний зміст |
|
Dov_Vul |
Alpha |
назва вулиць (ключове поле) |
3. ОПИС АЛГОРИТМУ ФУНКЦІОНУВАННЯ ПРОГРАМНОГО ЗАБЕЗПЕЧЕННЯ
3.1 Інформаційна модель системи
Інформаційна модель відображує загальний склад інформаційних об'єктів автоматизованої системи, яка проектується та зв'язки між ними. Структура інформаційної моделі системи наведена на рис. 3.1.
Рис. 3.1. Інформаційна модель системи
4. ОСНОВНА ЧАСТИНА ПРОГРАМИ
Модульна структура програмного засобу
Програма складається з набору програмних модулів, кожний з яких виконує одну чи декілька функцій. Модульна структура програми зображена на малюнку. У таблиці наведено призначення програмних модулів.
Таблиця 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. ОСНОВНА ЧАСТИНА
5.1 Опис програмних модулів
5.1.1 . Модуль “Main”
Модуль Main є головним модулем програми через який здійснюється зв'язок з іншими програмними модулями. Перехід на інші програмні модулі виконується з використанням системи меню. Екранна форма модуля в режимі виконання програми, з розкритим елементом меню зображена на малюнку Рис.5.1
Рис.5.1 Екранна форма модуля Main в режимі виконання програми
Екранна форма модуля в режимі конструювання зображена на нижче Рис.5.2
Рис.4.2 Екранна форма модуля Main в режимі конструювання
Програмна специфікація модуля Main наведена у таблиці
Таблиця 5.1 Програмна специфікація модуля Main
Компонент програми |
Позначення |
Зміст |
|
1 |
2 |
3 |
|
Стандартні модулі |
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs, Menus, StdCtrls; |
Стандартні модулі, з якими встановлюється зв'язок |
|
Модулі програміста |
Dov_Vul, Dov_Pidpr, Kartka_Abon, Abonenti, Find, Zvit; |
Розроблені модулі, з якими встановлюється зв'язок |
|
Візуальні компонети |
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; |
Підпункт “ Список” пункту меню “ Запити” |
Модуль Abonenti призначений для введення інформації про абонентів.
Рис. 5.3 Екранна форма модуля Abonenti в режимі виконання програми
Екранна форма модуля в режимі конструювання зображена на Рис. 5.4
Рис. 5.4 екранна форма модуля Abonenti в режимі конструювання
Програмна специфікація модуля Abonenti наведена у таблиці
Таблиця 5.5 Програмна специфікація модуля Abonenti
Компонент програми |
Позначення |
Зміст |
|
Стандартні модулі |
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs, ExtCtrls, DBCtrls, Grids, DBGrids, DBTables, Db, StdCtrls, Mask; |
Стандартні модулі, з якими встановлюється зв'язок |
|
Модулі програміста |
Main, Kartka_Abon, Find; |
Розроблені модулі, з якими встановлюється зв'язок |
|
Візуальні компонети |
DBEdit1 : TDBEdit |
Поле для введення прізвища |
|
DBEdit2 : TDBEdit |
Поле для введення імені |
||
DBEdit3 : TDBEdit |
Поле для введення по батькова |
||
DBEdit4 : TDBEdit |
Поле для введення № абоненту |
||
DBEdit5 : TDBEdit |
Поле для введення № будинку |
||
DBEdit6 : TDBEdit |
Поле для введення № квартири |
||
DBGrid1: TDBGrid; |
Для перегляду і редагування інформації про абонента |
||
DBComboBox1: TDBComboBox; |
Поле для введення типу абонента |
||
DBLookupComboBox1: TDBLookupComboBox; |
Поле для введення назви вулиці |
||
DBLookupComboBox2: TDBLookupComboBox; |
Поле для введення назви підприємства або організації |
||
Button1: TButton; |
Кнопка, переходу на форму, де формується звіт “Картка абонента” |
||
DBNavigator: TDBNavigator |
Група кнопок для управління введенням інформації про абонента |
||
Label1: TLabel; |
Містить назву поля DBEdit1 |
||
Label3: TLabel; |
Містить назву поля DBEdit3 |
||
Label4: TLabel; |
Містить назву поля DBEdit4 |
||
Label6: TLabel; |
Містить назву поля DBEdit5 |
||
Label7: TLabel; |
Містить назву поля DBEdit6 |
||
Label5: TLabel; |
Містить назву поля “DBLookupComboBox1” |
||
Label8: TLabel; |
Містить назву “Адреса” |
||
Label9: TLabel; |
Містить назву поля “ DBComboBox1” |
||
Label10: TLabel; |
Містить назву поля “DBLookupComboBox2” |
||
procedure FormClose(Sender: TObject; var Action: TCloseAction); |
Перехід на головну форму |
||
FormCreate(Sender: TObject); |
Невідображення компонентів Label10 і DBLookupComboBox2 |
||
procedure Button1Click(Sender: TObject); |
Формування запиту для створення звіту та перехід на форму формування звіту “Картка абонента” |
Модуль Dov_Pidpr призначений для введення назв організацій або підприємств.
Рис. 5.5 екранна форма модуля Dov_Pidpr в режимі виконання програми
Екранна форма модуля в режимі конструювання зображена на Рис. 5.6
Рис. 5.6 екранна форма модуля Dov_Pidpr в режимі конструювання
Програмна специфікація модуля Dov_Pidpr наведена у таблиці
Таблиця 5.6 Програмна специфікація модуля Unit3
Компонент програми |
Позначення |
Зміст |
|
1 |
2 |
3 |
|
Стандартні модулі |
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,DBTables, Db, ExtCtrls, DBCtrls, Grids, DBGrids, StdCtrls, Mask; |
Стандартні модулі, з якими встановлюється зв'язок |
|
Модулі програміста |
Main; |
Розроблені модулі, з якими встановлюється зв'язок |
|
Візуальні компоненти |
DBNavigator1: TDBNavigator |
Група кнопок для управління введення назв організацій або підприємств |
|
DBGrid1: TDBGrid; |
Перегляд і редагування назв підприємств |
||
Процедури |
procedure FormClose(Sender: TObject; var Action: TCloseAction); |
Перехід на головну форму |
Модуль Dov_Vul призначений для введення назв вулиць.
Рис. 5.7 Екранна форма модуля Dov_Vul в режимі виконання програми
Рис. 5.8 Екранна форма модуля Dov_Vul в режимі конструювання
Таблиця 5.7.Програмна специфікація модуля Dov_Vul
Компонент програми |
Позначення |
Зміст |
|
1 |
2 |
3 |
|
Стандартні модулі |
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,Grids, DBGrids, DBTables, Db, StdCtrls, Mask, DBCtrls, ExtCtrls; |
Стандартні модулі, з якими встановлюється зв'язок |
|
Модулі програміста |
Main; |
Розроблені модулі, з якими встановлюється зв'язок |
|
Візуальні компонети |
DBGrid1: TDBGrid; |
Перегляд і редагування назв вулиць |
|
DBNavigator1: TDBNavigator |
Група кнопок для управління введення назв вулиць |
||
Процедури |
procedure FormClose(Sender: TObject; var Action: TCloseAction); |
Перехід на головну форму |
Модуль Find призначений для пошуку абонентів.
Рис. 5.9 Екранна форма модуля Find в режимі виконання програми
Рис. 5.10 Екранна форма модуля Find в режимі конструювання
Таблиця 5.8 Програмна специфікація модуля Find
Компонент програми |
Позначення |
Зміст |
|
1 |
2 |
3 |
|
Стандартні модулі |
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,StdCtrls, Db, DBTables, Grids, DBGrids; |
Стандартні модулі, з якими встановлюється зв'язок |
|
Модулі програміста |
Main, Kartka_Abon, Abonenti; |
Розроблені модулі, з якими встановлюється зв'язок |
|
Візуальні компонети |
DBGrid1: TDBGrid; |
Перегляд результату по запиті |
|
Edit1: TEdit; |
Поле для введення прізвища |
||
Edit2: TEdit; |
Поле для введення вулиці |
||
Edit3: TEdit; |
Поле для введення № будинку |
||
Edit4: TEdit; |
Поле для введення № квартири |
||
Edit5: TEdit; |
Поле для введення вулиці |
||
Label1: TLabel; |
Містить назву поля Edit1 |
||
Label2: TLabel; |
Містить назву поля Edit2 |
||
Label3: TLabel; |
Містить назву поля Label5 |
||
Label5: TLabel; |
Виводить загальну кількість абонентів |
||
Label7: TLabel; |
Містить назву поля Edit3 |
||
Label8: TLabel; |
Містить назву поля Edit4 |
||
Label9: TLabel; |
Містить назву поля Edit5 |
||
CheckBox1: TCheckBox; |
Вибір тільки пільговиків |
||
Button1: TButton; |
Знаходження абонентів за певним критерієм і формування списку |
||
Button2: TButton; |
Знаходження абонентів за певним критерієм і формування картки |
||
Процедури |
procedure FormActivate(Sender: TObject); |
Виконання запиту на знаходження кількості абонентів |
|
FormClose(Sender: TObject; var Action: TCloseAction); |
Перехід на головну форму і оновлення бази даних |
||
Button1Click(Sender: TObject) |
Виконання запиту список абонентів |
||
Button2Click(Sender: TObject); |
Виконання запиту картка абонента |
Модуль Kartka_Abon генерує звіт “Картка абонента”
Рис. 5.11 Екранна форма модуля Kartka_Abon в режимі виконання програми
Рис.5. 12 Екранна форма модуля Kartka_Abon в режимі конструювання
Таблиця 5.9 Програмна специфікація модуля Kartka_Abon
Компонент програми |
Позначення |
Зміст |
|
1 |
2 |
3 |
|
Стандартні модулі |
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,quickrpt, Qrctrls, ExtCtrls, StdCtrls, DBCtrls; |
Стандартні модулі, з якими встановлюється зв'язок |
|
Модулі програміста |
Abonenti; |
Розроблені модулі, з якими встановлюється зв'язок |
|
Візуальні компонети |
QuickRep1: TQuickRep; |
Компонент, що генерує звіт |
|
QRLabel1: TQRLabel |
Заголовок звіту |
||
QRLabel2: TQRLabel |
Назва поля “Прізвище” |
||
QRLabel3: TQRLabel |
Назва поля “Ім'я” |
||
QRLabel4: TQRLabel |
Назва поля “По батькові” |
||
QRLabel5: TQRLabel |
Назва поля “№ абоненту” |
||
QRLabel6: TQRLabel |
Назва поля “Пільги” |
||
QRLabel7: TQRLabel |
Назва “Адреса” |
||
QRLabel8: TQRLabel |
Назва поля “Вулиця” |
||
QRLabel9: TQRLabel |
Назва поля “№ будинку” |
||
QRLabel10: TQRLabel |
Назва поля “№ квартири” |
||
QRDBText1: TQRDBText |
Компонент для виведення прізвища |
||
QRDBText2: TQRDBText |
Компонент для виведення імені |
||
QRDBText3: TQRDBText |
Компонент для виведення по батькові |
||
QRDBText4: TQRDBText |
Компонент для виведення № абоненту |
||
QRDBText5: TQRDBText |
Компонент для виведення вулиці |
||
QRDBText6: TQRDBText |
Компонент для виведення будинку |
||
QRDBText7: TQRDBText |
Компонент для виведення квартири |
||
QRDBText8: TQRDBText |
Компонент для виведення пільг |
Модуль Zvit генерує звіти “Список абонентів” і “Список пільговиків”
Рис. 5.13 Екранна форма модуля Zvit в режимі виконання програми
Рис. 5.14 екранна форма модуля Zvit в режимі конструювання
Таблиця 5.10 Програмна специфікація модуля Zvit
Компонент програми |
Позначення |
Зміст |
|
1 |
2 |
3 |
|
Стандартні модулі |
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,quickrpt, Qrctrls, ExtCtrls, Db, DBTables; |
Стандартні модулі, з якими встановлюється зв'язок |
|
Модулі програміста |
Main; |
Розроблені модулі, з якими встановлюється зв'язок |
|
Візуальні компонети |
QuickRep1: TQuickRep; |
Компонент, що генерує звіт список |
|
QuickRep2: TQuickRep; |
Компонент, що генерує звіт картка |
||
QRLabel1: TQRLabel |
Заголовок звіту |
||
QRLabel2: TQRLabel |
Назва стовпця “ПІБ” |
||
QRLabel3: TQRLabel |
Назва стовпця “Номер” |
||
QRLabel4: TQRLabel |
Назва стовпця “Вулиця” |
||
QRLabel5: TQRLabel |
Назва стовпця “№ будинку” |
||
QRLabel6: TQRLabel |
Назва стовпця “№ квартири” |
||
QRLabel7: TQRLabel |
Назва стовпця “Пільги” |
||
QRLabel9: TQRLabel |
Назва стовпця “ПІБ” |
||
QRLabel10: TQRLabel |
Назва стовпця “Номер” |
||
QRLabel11: TQRLabel |
Назва стовпця “Вулиця” |
||
QRLabel12: TQRLabel |
Назва стовпця “№ будинку” |
||
QRLabel3: TQRLabel |
Назва стовпця “№ квартири” |
||
QRDBText1: TQRDBText; |
Компонент для виведення прізвища |
||
QRDBText2: TQRDBText; |
Компонент для виведення імені |
||
QRDBText3: TQRDBText; |
Компонент для виведення по батькові |
||
QRDBText4: TQRDBText; |
Компонент для виведення № телефону |
||
QRDBText5: TQRDBText; |
Компонент для виведення вулицю |
||
QRDBText6: TQRDBText; |
Компонент для виведення № будинку |
||
QRDBText7: TQRDBText; |
Компонент для виведення № квартири |
||
QRDBText8: TQRDBText; |
Компонент для виведення пільги |
||
QRDBText9: TQRDBText; |
Компонент для виведення прізвища |
||
QRDBText0: TQRDBText; |
Компонент для виведення імені |
||
QRDBText11: TQRDBText; |
Компонент для виведення по батькові |
||
QRDBText12: TQRDBText; |
Компонент для виведення № телефону |
||
QRDBText13: TQRDBText; |
Компонент для виведення вулицю |
||
QRDBText14: TQRDBText; |
Компонент для виведення № будинку |
||
QRDBText15: TQRDBText; |
Компонент для виведення № квартири |
Програмний код модулів додається в додатку.
ДОДАТКИ
Додаток 1
Технічне завдання на розробку програмного засобу
1. ЗАГАЛЬНІ ПОЛОЖЕННЯ
1.2. Найменування програмного засобу
Повне найменування програмної розробки: "Автоматизована система „Телефонний довідник”", надалі іменована як "програма". Коротка назва програми - "Телефонний довідник".
1.2. Призначення розробки та область застосування
Програма "Телефонний довідник" призначена для автоматизації введення і збереження даних абонентів, таких як: „Тип абоненту: організація, підприємство, приватна особа”, „Номер телефонну абонента”, „Назва або прізвище абонента”, „Адреса абонента: вулиця, № будинку, № квартири”, „Наявність пільг на оплату”. А також одержання даних за заданим критерієм, формування списків абонентів і звітів у паперовій формі. Програма може бути застосована на підприємствах, організаціях як телефонний довідник.
1.3. Найменування розроблювача і замовника
Розроблювач даного програмного продукту - студент групи П-305 Янцов О.С., надалі іменований як "розроблювач ".Замовник програмного продукту - Циклова комісія “Програмування для ЕОТ і автоматизованих систем” Бердичівського політехнічного коледжу, в особі викладача Тростянського Б.Г.
2. ПІДСТАВА ДЛЯ РОЗРОБКИ
2.1. Документ, на підставі якого ведеться розробка
Робота ведеться на підставі завдання на курсове проектування по дисципліні “Технологія розробки програмного забезпечення”
2.2. Організація, що затвердила цей документ, і дата його затвердження
Завдання затверджене на засіданні циклової комісії “Програмування для ЕОТ і автоматизованих систем” Бердичівського політехнічного коледжу __________ і видано викладачем Тростянським Б.Г.
3. ВИМОГИ ДО ПРОГРАМИ
3.1. Вимоги до функціональних характеристик
3.1.1. Склад виконуваних функцій
Програма повинна забезпечувати введення, збереження і редагування даних про абонентів, формувати запити по основним обліковим і статистичним показникам.
Програма повинна мати можливість автозаповнення або підстановки даних у визначені поля (вулиця, назва підприємства) для прискорення роботи.
Програма повинна забезпечувати коректне введення та перевірку інформації на відповідність типу.
Програма повинна мати можливість сортування даних з різними критеріями.
Програма повинна мати можливість використання фільтру (спеціальна опція, що дозволяє відображати, тільки ті дані, які задовольняють заданій умові), параметри якого формуються користувачем.
Програма повинна мати можливість настроювання необхідних параметрів роботи (загальнопрограмні константи, шляхи збереження файлів і т.д.).
Програма повинна забезпечувати виведення на принтер бази даних або результатів запитів з можливістю використання фільтрів.
Програма повинна мати розгалужену довідкову систему, з можливістю отримання довідки у різних режимах.
Встановлення програми повинне виконуватися з використанням інсталяційного пакету.
3.1.2. Організація вхідних і вихідних даних
Організація вхідних і вихідних даних повинна відповідати інформаційній структурі виконуваних операцій, вхідним та вихідним паперовим документам.
Введення оперативних даних повинно виконуватися з використанням діалогових екранних форм, побудованих на основі візуальних компонентів.
Дані, які підлягають збереженню повинні зберігатися у вигляді таблиць баз даних у форматі PARADOX.
3.1.3. Часові характеристики і розмір пам'яті, необхідної для роботи програми
Час реакції програми на натискання клавіш і маніпуляцій мишею не повинен перевищувати 0,25 с.
Реакція на команди меню, крім Відкриття, Збереження, Пошук не повинна перевищувати 1 с.
Реакція на команди Відкриття, Збереження, Пошук повинна залежати тільки від розміру файлів даних і параметрів пошуку.
Обсяг оперативної пам'яті, необхідний для роботи програми не повинний перевищувати 1 Мбайт.
Дисковий простір, необхідний для збереження програми і файлів даних не повинен перевищувати 4 Мбайт (для 100 записів таблиць бази даних).
В архівному вигляді файли початкового коду програми, баз даних і довідкової системи не повинні перевищувати 1,2 Мбайт.
Розмір інсталяційного пакету програми, який включає базову програму і програми для підтримки її роботи не повинен перевищувати 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. Вимоги до методів рішення і мов програмування
Вибір методів рішення здійснюється розроблювачем без узгодження з замовником. Розробка програми повинна вестися на одній з наступних мов і з використанням засобів програмування: Borland Delphi.
3.4.3. Вимоги до системних програмних засобів
Програма повинна працювати під управлінням операційної системи Windows 98, Windows 2000, Windows XP.
Для забезпечення функціонування програми до складу системного програмного забезпечення повинен входити драйвер принтера відповідного типу (з урахуванням моделі принтера і встановленої версії операційної системи), архіватор WinRar.
3.5. Вимоги до складу і параметрів технічних засобів
Вимоги до складу технічних засобів:
- персональний комп'ютер (ПК) у базовій конфігурації;
- пристрій для роботи з компакт дисками, якщо передбачено встановлення програми з CD;
- принтер формату А4.
Системні параметри ПК визначаються типом операційної системи, обумовленої у п. 4.3.3. з урахуванням ресурсів, необхідних для підтримки роботи самої програми. Рекомендовані мінімальні характеристики технічних засобів, які забезпечують ефективну роботу програми у будь якому із вказаних системних програмних середовищ:
- процесор - Pentium III з тактовою частотою 750 МГц;
- оперативна пам'ять - 128 Mбайт;
- обсяг дискової пам'яті - 20 Гбайт.
4. ВИМОГИ ДО ПРОГРАМНОЇ ДОКУМЕНТАЦІЇ
Програмна документація повинна включати наступні документи:
- “Інструкція по інсталяції (встановленню) програми”, складається з опису інсталяційного пакету, переліку етапів інсталяції та їх послідовності, шляху інсталяції, розміру інсталяційного пакету та програмних файлі після інсталяції;
- “Керівництво користувача”, складається з опису послідовності завантаження програми, основних режимів роботи, основних екранних форм та їх структури, переліку виняткових ситуацій та реакції користувача на них, контрольні приклади;
- “Керівництво адміністратора баз даних”, складається з опису складу таблиць бази даних та доступів до них (список користувачів, їх права і паролі), опису та послідовності робіт по обслуговуванню бази даних (архівування, резервне ковпіювання, з вказівкою періодичності виконання та засобів, що для цього використовуються).
5. ТЕХНІКО - ЕКОНОМІЧНІ ПОКАЗНИКИ
Техніко - економічні показники визначаються замовником без участі виконавця.
6. СТАДІЇ ТА ЕТАПИ РОЗРОБКИ
Стадії та етапи розробки програми, та терміни їх виконання повинні відповідати затвердженому графіку курсового проектування.
7. ПОРЯДОК КОНТРОЛЮ І ПРИЙМАННЯ
Основними формами контролю виконання проекту є - поточний, проміжковий і підсумковий.
Поточний контроль здійснюється виконавцем, щляхом систематичної перевірки відповідності стану виконуваних робіт графіку виконання проекту і поточних характеристик проекту вимогам технічного завдання.
Проміжковий контроль здійснюється замовником із залученням виконавця, у відповідності до графіку проведення контролю, шляхом первірки поточного стану проекта графіку розробки і відвічності основних етапів та характеристик проекту технічному завданню. Недоліки, виявлені у результаті проміжкового контролю повинні бути усунені до наступної перевірки.
Підсумковий контроль проводиться комісією, яка складається із представників замовника, у присутності виконавця в термін визначений графіком виконання проекту. Підсумковий контроль передбачає комплексне тестування всього проекту і окремих модулів на відповідність функціональним і якісним характеристикам, перевірку складу та якості програмної документації, комплектність проекту у відповідності до пред'явленого опису і технічного завдання.
На основі результатів підсумкового контролю комісія робить висновок про приймання або неприймання проекту, з оформленням відповідного акту (рецензії) на виконану роботу.
Додаток 2
Коди програмних модулів
unit Main;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
Menus, StdCtrls;
type
TFMain = class(TForm)
Label1: TLabel;
Label2: TLabel;
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;
procedure N2Click(Sender: TObject);
procedure N3Click(Sender: TObject);
procedure N4Click(Sender: TObject);
procedure N8Click(Sender: TObject);
procedure N7Click(Sender: TObject);
procedure N11Click(Sender: TObject);
procedure N9Click(Sender: TObject);
procedure N14Click(Sender: TObject);
procedure N13Click(Sender: TObject);
procedure N12Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
FMain: TFMain;
implementation
uses Dov_Vul, Dov_Pidpr, Kartka_Abon, Abonenti, Find, Zvit;
{$R *.DFM}
procedure TFMain.N2Click(Sender: TObject); //довідники, довідник вулиць
begin
FMain.Hide;
FDov_Vul.Show;
end;
procedure TFMain.N3Click(Sender: TObject); //довідники, довідник підприємств
begin
FMain.Hide;
FDov_Pidpr.Show;
end;
procedure TFMain.N4Click(Sender: TObject); //перегляд і редагування
begin
FMain.Hide;
FAbonenti.DataSource1.DataSet:=FAbonenti.Table1;
FAbonenti.Show;
end;
procedure TFMain.N8Click(Sender: TObject); //звіти, список абонентів
begin
FZvit.QuickRep1.preview;
end;
procedure TFMain.N7Click(Sender: TObject); //Звіти, картка абонента
begin
FKartka_Abon.QuickRep1.preview;
end;
procedure TFMain.N11Click(Sender: TObject);
begin
WinExec('arxiv.bat',sw_ShowDefault);
end;
procedure TFMain.N9Click(Sender: TObject);
begin
FZvit.Query1.Active:=false;
FZvit.Query1.Active:=true;;
FZvit.QuickRep2.preview;
end;
procedure TFMain.N14Click(Sender: TObject);
begin
FMain.Hide;
FFind.Table1.Active:=true;
Ffind.DataSource1.DataSet:=Ffind.Table1;
Ffind.Query1.Close;
FFind.Edit1.Text:='';
FFind.Edit2.Text:='';
FFind.Edit3.Text:='';
FFind.Edit4.Text:='';
FFind.CheckBox1.Visible:=true;
FFIND.DBGrid1.Visible:=true;
FFind.Button1.Visible:=true;
FFind.Edit5.Visible:=true;
FFind.Edit1.Visible:=False;
FFind.Edit2.Visible:=False;
FFind.Edit3.Visible:=False;
FFind.Edit4.Visible:=False;
Ffind.Label1.Visible:=False;
Ffind.Label2.Visible:=False;
Ffind.Label7.Visible:=False;
Ffind.Label8.Visible:=False;
FFind.Button2.Visible:=False;
Ffind.Label9.Visible:=true;
FFind.Show;
end;
procedure TFMain.N13Click(Sender: TObject);
begin
FMain.Hide;
FFind.Edit5.Text:='';
FFind.CheckBox1.State:=cbUnchecked;
FFind.Edit1.Visible:=true;
FFind.Edit2.Visible:=true;
FFind.Edit3.Visible:=true;
FFind.Edit4.Visible:=true;
Ffind.Label1.Visible:=true;
Ffind.Label2.Visible:=true;
Ffind.Label7.Visible:=true;
Ffind.Label8.Visible:=true;
FFind.Button2.Visible:=true;
FFind.CheckBox1.Visible:=False;
FFIND.DBGrid1.Visible:=False;
FFind.Button1.Visible:=False;
FFind.Edit5.Visible:=False;
Ffind.Label9.Visible:=False;
FFind.Show;
end;
procedure TFMain.N12Click(Sender: TObject);
begin
FMain.Close;
WinExec('rozarxiv.bat',sw_ShowDefault);
end;
end.
unit Abonenti;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
ExtCtrls, DBCtrls, Grids, DBGrids, DBTables, Db, StdCtrls, Mask;
type
TFAbonenti = class(TForm)
DataSource1: TDataSource;
Table1: TTable;
Database1: TDatabase;
DBNavigator1: TDBNavigator;
Label1: TLabel;
Label2: TLabel;
Label3: TLabel;
DBEdit1: TDBEdit;
DBEdit2: TDBEdit;
DBEdit3: TDBEdit;
Label4: TLabel;
Label5: TLabel;
Label6: TLabel;
Label7: TLabel;
Label8: TLabel;
DBEdit4: TDBEdit;
DBLookupComboBox1: TDBLookupComboBox;
DataSource2: TDataSource;
Table2: TTable;
DBEdit5: TDBEdit;
DBEdit6: TDBEdit;
Button1: TButton;
DBGrid1: TDBGrid;
DBComboBox1: TDBComboBox;
Label9: TLabel;
DBRadioGroup1: TDBRadioGroup;
Label10: TLabel;
DBLookupComboBox2: TDBLookupComboBox;
DataSource3: TDataSource;
Table3: TTable;
procedure Button1Click(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure DBComboBox1Change(Sender: TObject);
procedure FormCreate(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
FAbonenti: TFAbonenti;
implementation
uses Main, Kartka_Abon, Find;
{$R *.DFM}
procedure TFAbonenti.Button1Click(Sender: TObject); //роздрукувати картку абонента
begin
If DataSource1.DataSet = Table1 then
begin
FFind.DataSource1.DataSet:=FFind.Table1;
FKartka_Abon.QRDBText1.DataSet:=Table1;
FKartka_Abon.QRDBText2.DataSet:=Table1;
FKartka_Abon.QRDBText3.DataSet:=Table1;
FKartka_Abon.QRDBText4.DataSet:=Table1;
FKartka_Abon.QRDBText5.DataSet:=Table1;
FKartka_Abon.QRDBText6.DataSet:=Table1;
FKartka_Abon.QRDBText7.DataSet:=Table1;
FKartka_Abon.QRDBText8.DataSet:=Table1;
FKartka_Abon.QuickRep1.preview;
end;
If FFind.DataSource1.DataSet = FFind.Query1 then
begin
FKartka_Abon.QRDBText1.DataSet:=FFind.Query1;
FKartka_Abon.QRDBText2.DataSet:=FFind.Query1;
FKartka_Abon.QRDBText3.DataSet:=FFind.Query1;
FKartka_Abon.QRDBText4.DataSet:=FFind.Query1;
FKartka_Abon.QRDBText5.DataSet:=FFind.Query1;
FKartka_Abon.QRDBText6.DataSet:=FFind.Query1;
FKartka_Abon.QRDBText7.DataSet:=FFind.Query1;
FKartka_Abon.QRDBText8.DataSet:=FFind.Query1;
FKartka_Abon.QuickRep1.preview
end;
end;
procedure TFAbonenti.FormClose(Sender: TObject; var Action: TCloseAction);
begin
FMain.Show; //перейти на головну форму
end;
procedure TFAbonenti.DBComboBox1Change(Sender: TObject);
begin
if DBComboBox1.Text='Підприємство' then
begin
DBEdit1.Field.Text:='';
DBEdit3.Field.Text:='';
Label10.Visible:=true;
DBLookupComboBox2.Visible:=true;
DBEdit1.Visible:=false;
DBEdit2.Visible:=false;
DBEdit3.Visible:=false;
Label1.Visible:=false;
Label2.Visible:=false;
Label3.Visible:=false;
end;
if DBComboBox1.Text='Приватна особа' then
begin
Label10.Visible:=false;
DBLookupComboBox2.Visible:=false;
DBEdit1.Visible:=true;
DBEdit2.Visible:=true;
DBEdit3.Visible:=true;
Label1.Visible:=true;
Label2.Visible:=true;
Label3.Visible:=true;
end;
if DBComboBox1.Text='Організація' then
begin
DBEdit1.Field.Text:='';
DBEdit3.Field.Text:='';
Label10.Visible:=true;
DBLookupComboBox2.Visible:=true;
DBEdit1.Visible:=false;
DBEdit2.Visible:=false;
DBEdit3.Visible:=false;
Label1.Visible:=false;
Label2.Visible:=false;
Label3.Visible:=false;
end;
end;
procedure TFAbonenti.FormCreate(Sender: TObject);
begin
Label10.Visible:=false;
DBLookupComboBox2.Visible:=false;
end;
end.
unit Dov_Pidpr;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
DBTables, Db, ExtCtrls, DBCtrls, Grids, DBGrids, StdCtrls, Mask;
type
TFDov_Pidpr = class(TForm)
DBGrid1: TDBGrid;
DBNavigator1: TDBNavigator;
Table1: TTable;
DataSource1: TDataSource;
Table1Pidpr: TStringField;
Database1: TDatabase;
procedure FormClose(Sender: TObject; var Action: TCloseAction);
private
{ Private declarations }
public
{ Public declarations }
end;
var
FDov_Pidpr: TFDov_Pidpr;
implementation
uses Main;
{$R *.DFM}
procedure TFDov_Pidpr.FormClose(Sender: TObject; var Action: TCloseAction);
begin
FMain.Show; //перейти на головну форму
end;
end.
unit Dov_Vul;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
Grids, DBGrids, DBTables, Db, StdCtrls, Mask, DBCtrls, ExtCtrls;
type
TFDov_Vul = class(TForm)
DataSource1: TDataSource;
Table1: TTable;
Database1: TDatabase;
DBGrid1: TDBGrid;
DBNavigator1: TDBNavigator;
procedure FormClose(Sender: TObject; var Action: TCloseAction);
private
{ Private declarations }
public
{ Public declarations }
end;
var
FDov_Vul: TFDov_Vul;
implementation
uses Main;
{$R *.DFM}
procedure TFDov_Vul.FormClose(Sender: TObject; var Action: TCloseAction);
begin
FMain.Show; //перейти на головну форму
end;
end.
unit Find;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
StdCtrls, Db, DBTables, Grids, DBGrids;
type
TFFind = class(TForm)
Button1: TButton;
Edit1: TEdit;
Query1: TQuery;
DataSource1: TDataSource;
Table1: TTable;
DBGrid1: TDBGrid;
Label1: TLabel;
Label2: TLabel;
Edit2: TEdit;
Label3: TLabel;
Label5: TLabel;
CheckBox1: TCheckBox;
Button2: TButton;
Label7: TLabel;
Edit3: TEdit;
Edit4: TEdit;
Label8: TLabel;
Edit5: TEdit;
Label9: TLabel;
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure Button1Click(Sender: TObject);
procedure FormActivate(Sender: TObject);
procedure Button2Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
FFind: TFFind;
implementation
uses Main, Kartka_Abon, Abonenti;
{$R *.DFM}
procedure TFFind.FormClose(Sender: TObject; var Action: TCloseAction);
begin
FMain.Show;
Table1.Active:=true;
end;
procedure TFFind.Button1Click(Sender: TObject);//знайти
var
Fpriz, FVul, FPilg, FBud, FKvart, FVulS : String;
begin
if CheckBox1.Checked = true then
FPilg:='так';
Fpriz:=Edit1.Text; //по заданому прізвищу
FVul:=Edit2.Text; //по заданій вулиці
FBud:=Edit3.Text;
FKvart:=Edit4.Text;
FVulS:=Edit5.Text;
FFind.Query1.Close;
FFind.Query1.SQL.Clear;
FFind.Query1.SQL.Add('Select PRIZ,Name,PBAT,Vul,Tel,Bud,Kvart,Tip,Pilgi');
FFind.Query1.SQL.Add('From ":Tel_Dov:Abonenti.db"');
FFind.Query1.SQL.Add('Where');
FFind.Query1.SQL.Add('(PRIZ="'+Fpriz+'" or Vul="'+FVul+'" and Bud="'+FBud+'" and Kvart="'+FKvart+'"or Pilgi="'+FPilg+'" or Vul="'+FVulS+'")');
FFind.Query1.Open;
If FFind.Query1.RecordCount <>0 Then
begin
Table1.Active:=False;
DataSource1.DataSet := Query1;
end
Else
begin
ShowMessage('У базі даних немає записів, які задовільняють умовам');
DataSource1.DataSet := Table1;
end;
end;
procedure TFFind.FormActivate(Sender: TObject);
begin
Label5.Caption:=IntToStr(Table1.RecordCount);
end;
procedure TFFind.Button2Click(Sender: TObject);
begin
Button1Click(Sender);
If DataSource1.DataSet = Query1 then
begin
FFind.Close;
FAbonenti.Show;
FAbonenti.DataSource1.DataSet:=Query1;
end;
end;
end.
unit Kartka_Abon;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
quickrpt, Qrctrls, ExtCtrls, StdCtrls, DBCtrls;
type
TFKartka_Abon = class(TForm)
QuickRep1: TQuickRep;
QRLabel1: TQRLabel;
QRLabel2: TQRLabel;
QRLabel3: TQRLabel;
QRLabel4: TQRLabel;
QRDBText1: TQRDBText;
QRDBText2: TQRDBText;
QRDBText3: TQRDBText;
QRLabel5: TQRLabel;
QRDBText4: TQRDBText;
QRLabel6: TQRLabel;
QRLabel7: TQRLabel;
QRLabel8: TQRLabel;
QRDBText5: TQRDBText;
QRLabel9: TQRLabel;
QRDBText6: TQRDBText;
QRLabel10: TQRLabel;
QRDBText7: TQRDBText;
QRDBText8: TQRDBText;
private
{ Private declarations }
public
{ Public declarations }
end;
var
FKartka_Abon: TFKartka_Abon;
implementation
uses Abonenti;
{$R *.DFM}
end.
unit Zvit;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
quickrpt, Qrctrls, ExtCtrls, Db, DBTables;
type
TFZvit = class(TForm)
QuickRep1: TQuickRep;
DataSource1: TDataSource;
Table1: TTable;
QRBand1: TQRBand;
QRLabel1: TQRLabel;
QRBand2: TQRBand;
QRDBText1: TQRDBText;
QRDBText2: TQRDBText;
QRDBText3: TQRDBText;
QRDBText4: TQRDBText;
QRDBText5: TQRDBText;
QRDBText6: TQRDBText;
QRDBText7: TQRDBText;
QRLabel2: TQRLabel;
QRLabel3: TQRLabel;
QRLabel4: TQRLabel;
QRLabel5: TQRLabel;
QRLabel6: TQRLabel;
QRLabel7: TQRLabel;
QRDBText8: TQRDBText;
QuickRep2: TQuickRep;
QRBand3: TQRBand;
QRBand4: TQRBand;
DataSource2: TDataSource;
Query1: TQuery;
QRDBText9: TQRDBText;
QRLabel8: TQRLabel;
QRLabel9: TQRLabel;
QRDBText10: TQRDBText;
QRDBText11: TQRDBText;
QRLabel10: TQRLabel;
QRDBText12: TQRDBText;
QRLabel11: TQRLabel;
QRDBText13: TQRDBText;
QRLabel12: TQRLabel;
QRDBText14: TQRDBText;
QRLabel13: TQRLabel;
QRDBText15: TQRDBText;
private
{ Private declarations }
public
{ Public declarations }
end;
var
FZvit: TFZvit;
implementation
uses Main;
{$R *.DFM}
end.
Подобные документы
Основи проектування інформаційних реляційних баз даних, надання користувачам необхідної їм інформації на основі збережених даних. Розробка бази даних, що дозволяє зберігати інформацію про абонентів (ім'я, мобільний телефон, адреса, e-mail, реєстрація).
курсовая работа [1,9 M], добавлен 13.11.2010Розроблення та створення автоматизованої інформаційно-довідкової системи обліку проданих квитків на авіарейси. Обробка баз даних СКБД Access. Розробка зручного діалогового інтерфейсу у вигляді меню користувача, яке реалізоване через керуючу форму.
курсовая работа [56,9 K], добавлен 16.04.2011Використання структурно-орієнтованого підходу при написанні програм на мові Сі та Паскаль, тестування та відладки, оформлення документації на програмну розробку. Побудова ефективних алгоритмів для розв’язку типових задач. Процедури пошуку (search).
курсовая работа [199,5 K], добавлен 14.01.2016Розробка ефективних засобів навчання. Виявлення системи, способів, що сприяють підвищенню активності учнів. Призначення та область використання програми електронний довідник. Розробка алгоритму програми. Обґрунтування вибору мови і системи програмування.
курсовая работа [161,7 K], добавлен 02.06.2014Процес і результати проектування автоматизованої системи "Облік паспортних даних", призначеної для автоматизації обліку паспортних даних. Обґрунтування вибору методів та засобів обробки даних. Створення зручного графічного інтерфейсу користувача.
курсовая работа [1,8 M], добавлен 23.09.2010Проектування інтерфейсу програми. Вимоги до продукту. Вхідні дані на розробку автоматизованої системи. Вибір середовища програмування. Розробка структури бази даних. Функціональна та логічна структура програми. Розробка структури таблиць бази даних.
курсовая работа [43,1 K], добавлен 30.06.2015Принципи роботи інтерфейсу ADO для роботи в СУБД MS Access. Створення додатку "Довідник фармацевта" на основі Borland Delphi 7.0, що допомагає ввести звітну документацію, формувати підсумки роботи зберігати дані про ліки та їх ціни, постачальників.
курсовая работа [1,2 M], добавлен 30.06.2015Розробка автоматизованої інформаційно-довідкової системи "Шовкова фея". Область використання системи, визначення функцій, вибір програмних засобів для розв’язання задачі, її комп’ютерна реалізація. Вимоги до ПЗ. Аналіз вихідних даних засобами MS Excel.
презентация [980,4 K], добавлен 09.09.2010Проектування бази даних "Автоматизована система обліку замовлень та їх виконання в будівельній фірмі": створення таблиць і заповнення їх текстовою інформацією, розробка форм, звітів і меню проекту. Програмування інтерфейсу управління базами даних.
дипломная работа [6,1 M], добавлен 06.01.2012Розробка програми для управління навчальним процесом студентської групи вищого навчального закладу. Об’єктно-орієнтоване проектування об’єктів групи. Створення мови програмування Java. Побудова графічного інтерфейсу. Робота з невеликими базами даних.
курсовая работа [935,3 K], добавлен 21.12.2013