Автор работы: Пользователь скрыл имя, 21 Октября 2013 в 21:30, дипломная работа
Дана дипломна робота присвячена розробці інформаційної підтримки продажу та ремонту комп’ютерної техніки за допомогою використання механізму проектування реляційних баз даних. Метою цієї роботи є створення надійної системи, яка б забезпечувала ефективне збереження та цілісність даних, дозволяла легке внесення та редагування даних в базі, дозволяла виконувати пошук та відбір даних з бази за певними критеріями, дозволяла видавати потрібні звіти певного зразка та разом з тим була легкою у користуванні. Постає питання, чи буде актуальною дана робота.
Вступ 4
1 Сучасні технології розробки інформаційних систем. 7
1.1 Поняття штучного інтелекту. 7
1.2 Проблема штучного інтелекту 11
1.3 Поняття інформаційної системи. 13
1.4 Поняття бази даних. 14
1.5 Класифікація АІС. 18
1.1. Інформаційні системи та засоби їх створення 21
1.1.2. Зовнішній рівень проектування. 22
1.1.3. Інфологічний рівень проектування. 23
1.1.4. Нормалізація відносин. 25
1.1.5. Діаграма „Сутність-зв'язок”. 27
1.2. Проблеми автоматизації в інформаційних системах. 29
1.2.1. Причини переходу до використання СУБД 30
2 Проетування автоматизованої системи. 32
2.1. Проектування інформаційної бази 32
2.2. Аналіз предметної області. 33
2.3. Проектування діалогового режиму обробки даних- 36
3 Програмно-технічна реалізація системи. 38
3.1.Структура системи. 38
3.2. Постановка задач в DELPHI 40
3.3. Основні компоненти для роботи з базами даних в DELPHI 43
3.3.1. Компонент TTable 43
3.3.2. Компонент TDBGrid 47
3.3.3. Компонент TDBLookup 48
3.4. Особливості реалізації інформаційної системи. 50
3.5. Робота з формами системи. 51
Висновок 61
Список використаної літератури: 62
Додатки 63
Додаток 1. Модуль головної форми F 63
Додаток 2. Модуль форми занесення даних про клієнтів FKD 72
Додаток 3. Модуль форми зміни даних про клієнтів FKD 74
Додаток 4. Модуль форми занесення даних про товар FT1 76
Додаток 5. Модуль форми пошуку даних FР 79
Додаток 6. Модуль форми продажу товару FZ1 84
Додаток 7. Модуль форми ремонту товару FZ2 87
Додаток 8. Модуль форми завантаження програми 90
Рис.17 „Форма про систему”.
Рис.18 „Форма про автора”.
Рис.19 „Повідомлення при виході з системи”.
При виході з система, необхідно натиснути кнопку „Вихід” в пукті меню або на панелі інструментів. Після натискання кнопки – з’явиться повідомлення про підтвердження (Рис.19) після чого програма закриється.
Цінність цієї роботи полягає у
створенні інформаційної
Слід відмітити важливу річ, розроблена в даній дипломній роботі інформаційна система справді автоматизує роботу, але автоматизує в тому плані, що позбавляє необхідності ведення паперової документації та роботи з нею, полегшує ведення обліку „заліза”, полегшує пошук конкретного. Але головна мета даної дипломної роботи досягнута, а саме розроблено інформаційну систему, яка підтримує модель реляційних баз даних, забезпечуючи збереження, надійність та цілісність введених даних.
Розроблена інформаційна система за допомогою використання мови програмування Delphi 5.0 з «не стандартних » компонент, дозволяє легко вводити будь-які дані, що стосуться обліку індивідуальних відомостей та інших для подальшого аналізу, зберігання та редагування.
Даний дипломний проект розроблювався не з комерційними цілями, а для масового застосування в магазинах та організаціях, як програмний продукт, який може задовільнити потреби більшості користувачів, які не мають необхідних навичок роботи з подібними системами.
1. Кондзюба С.П., Громов В.Н. Базы данных и приложения. – К: Издательство «ДиаСофт», 2001. – 592 с.
2. Ерёмина Н.В. Проектирование БД. – К: КНЕУ, 1998. – 204 с.
3. Атре Ш. Структурный подход к организации баз данных. – М.: Финансы и статистика, 1983. – 320 с.
4.Бойко В.В., Савинков В.М. Проектирование баз данных инфо-рмационных систем. – М.: Финансы и статистика, 1989. – 351 с.
5. Дейт К. Руководство по реляционной СУБД DB2. – М.: Финансы и статистика, 1988. – 320 с.
unit UF;
interface
uses {підключаються використовувані модулі}
Windows, Messages, SysUtils, Classes;
type
TF = class(TForm)
MainMenu1: TMainMenu;
N1: TMenuItem;
.....................
RzSpacer4: TRzSpacer;
procedure N24Click(Sender: TObject);
procedure N2Click(Sender: TObject);
procedure N4Click(Sender: TObject);
procedure N25Click(Sender: TObject);
procedure N7Click(Sender: TObject);
procedure N8Click(Sender: TObject);
procedure N12Click(Sender: TObject);
procedure N18Click(Sender: TObject);
procedure N19Click(Sender: TObject);
procedure N10Click(Sender: TObject);
procedure N15Click(Sender: TObject);
procedure N14Click(Sender: TObject);
procedure N23Click(Sender: TObject);
procedure N22Click(Sender: TObject);
procedure N29Click(Sender: TObject);
procedure BtnNewClick(Sender: TObject);
procedure BtnNew1Click(Sender: TObject);
procedure BtnNew2Click(Sender: TObject);
procedure BtnNew3Click(Sender: TObject);
procedure BtnExitClick(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure BtnNew5Click(Sender: TObject);
procedure N26Click(Sender: TObject);
procedure BtnUpOneLevelClick(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
F: TF;
implementation
uses UK, UT, UZ, Uz1, Uz2, Ualias, UP, Ua, Uinfo;
{$R *.DFM}
procedure TF.N24Click(Sender: TObject);
begin
// видає повідомлення для підтвердження виходу
if messagedlg('Ви дійсно хочете вийти з програми?', mtConfirmation, [mbYes, mbNo], 0) = mrYes then
halt; // повний вихід з програми
end;
procedure TF.N2Click(Sender: TObject);
begin
// підключення форми
fk.showmodal;
end;
procedure TF.N4Click(Sender: TObject);
begin
FT.showmodal;
end;
procedure TF.N25Click(Sender: TObject);
begin
fz.showmodal;
end;
procedure TF.N7Click(Sender: TObject);
begin
fz1.showmodal;
end;
procedure TF.N8Click(Sender: TObject);
begin
fz2.showmodal;
end;
procedure TF.N12Click(Sender: TObject);
begin
// перевіряє чи є файл звіту
if FileExists('klient.FRF') Then
begin
// загружає файл звіту
alias.frReport1.LoadFromFile('
alias.frReport1.PrepareReport;
alias.frReport1.
end
// якщо немає файлу то відключає
else alias.frReport1.DesignReport;
end;
procedure TF.N18Click(Sender: TObject);
begin
if FileExists('Garantiya.frf') Then
begin
alias.frReport3.LoadFromFile('
alias.frReport3.PrepareReport;
alias.frReport3.
end
else alias.frReport3.DesignReport;
end;
procedure TF.N19Click(Sender: TObject);
begin
// якщо запис в базі „Продаж” то формує звіт по продажу
if fz.DBEdit1.Text='Продаж' then
begin
if FileExists('Prodag.FRF') Then
begin
alias.frReport2.LoadFromFile('
alias.frReport2.PrepareReport;
alias.frReport2.
end
else alias.frReport2.DesignReport;
end;
// якщо запис в базі „Ремонт” то формує звіт по ремонту
if fz.DBEdit1.Text='Ремонт' then
begin
if FileExists('Remont.FRF') Then
begin
alias.frReport2.LoadFromFile('
alias.frReport2.PrepareReport;
alias.frReport2.
end
else alias.frReport2.DesignReport;
end;
end;
procedure TF.N10Click(Sender: TObject);
begin
if FileExists('osk.FRF') Then
begin
alias.frReport4.LoadFromFile('
alias.frReport4.PrepareReport;
alias.frReport4.
end
else alias.frReport4.DesignReport;
end;
procedure TF.N15Click(Sender: TObject);
begin
if FileExists('prays.FRF') Then
begin
alias.frReport5.LoadFromFile('
alias.frReport5.PrepareReport;
alias.frReport5.
end
else alias.frReport5.DesignReport;
end;
procedure TF.N14Click(Sender: TObject);
begin
fp.showmodal;
end;
procedure TF.N23Click(Sender: TObject);
begin
a.showmodal;
end;
procedure TF.N22Click(Sender: TObject);
begin
finfo.showmodal;
end;
procedure TF.N29Click(Sender: TObject);
begin
// процедура, яка показує
при натисканні кнопки панель R
f.N29.Checked:=true;
f.N26.Checked:=false;
f.RzToolbar1.Visible:=true;
end;
procedure TF.BtnNewClick(Sender: TObject);
begin
fk.showmodal;
end;
procedure TF.BtnNew1Click(Sender: TObject);
begin
FT.showmodal;
end;
procedure TF.BtnNew2Click(Sender: TObject);
begin
fz.showmodal;
end;
procedure TF.BtnNew3Click(Sender: TObject);
begin
fp.showmodal;
end;
procedure TF.BtnExitClick(Sender: TObject);
begin
if messagedlg('Ви дійсно хочете вийти з програми?', mtConfirmation, [mbYes, mbNo], 0) = mrYes then
halt;
end;
procedure TF.FormClose(Sender: TObject; var Action: TCloseAction);
begin
if messagedlg('Ви дійсно хочете вийти з програми?', mtConfirmation, [mbYes, mbNo], 0) = mrYes then
halt;
end;
procedure TF.BtnNew5Click(Sender: TObject);
begin
if FileExists('prays.FRF') Then
begin
alias.frReport5.LoadFromFile('
alias.frReport5.PrepareReport;
alias.frReport5.
end
else alias.frReport5.DesignReport;
end;
procedure TF.N26Click(Sender: TObject);
begin
// процедура, яка ховає при натисканні кнопки панель RzToolbar
f.N29.Checked:=false;
f.N26.Checked:=true;
f.RzToolbar1.Visible:=false;
end;
procedure TF.BtnUpOneLevelClick(Sender: TObject);
begin
// процедура, яка ховає при натисканні кнопки панель RzToolbar
f.N29.Checked:=false;
f.N26.Checked:=true;
f.RzToolbar1.Visible:=false;
end;
end.
unit UKD;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
StdCtrls, Buttons;
type
TFKD = class(TForm)
Label1: TLabel;
.....................
Edit4: TEdit;
SpeedButton1: TSpeedButton;
SpeedButton2: TSpeedButton;
procedure SpeedButton2Click(Sender: TObject);
procedure FormActivate(Sender: TObject);
procedure SpeedButton1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
FKD: TFKD;
implementation
uses Ualias;
{$R *.DFM}
procedure TFKD.SpeedButton2Click(Sender: TObject);
begin
// закриття форми
fkd.Close;
end;
procedure TFKD.FormActivate(Sender: TObject);
begin
// очищаєм компоненти TEdit від тексту
fkd.Edit1.Text:='';
fkd.Edit2.Text:='';
fkd.Edit3.Text:='';
fkd.Edit4.Text:='';
end;
procedure TFKD.SpeedButton1Click(Sender: TObject);
begin
// відкриваєм базу для занесення даних
alias.Klient.Insert;
// для відповідного поля в базі присвоюємо відповідний текст з компонентів TEdit
alias.Klient.FieldByName('
alias.Klient.FieldByName('kod'
alias.Klient.FieldByName('tel'
alias.Klient.FieldByName('
// закриваєм базу і зберігаєм в ній дані.
// процедура Cancel закриває без зберігання
alias.Klient.Post;
fkd.Close;
end;
end.
unit UKZ;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
Buttons, StdCtrls;
type
TFKZ = class(TForm)
Label1: TLabel;
.....................
Edit4: TEdit;
SpeedButton1: TSpeedButton;
SpeedButton2: TSpeedButton;
procedure SpeedButton2Click(Sender: TObject);
procedure SpeedButton1Click(Sender: TObject);
procedure FormActivate(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
FKZ: TFKZ;
implementation
uses Ualias, UKD;
{$R *.DFM}
procedure TFKZ.SpeedButton2Click(Sender: TObject);
begin
fkz.Close;
end;
procedure TFKZ.SpeedButton1Click(Sender: TObject);
begin
// відкриваєм базу для редагуванн
alias.Klient.Edit;
alias.Klient.FieldByName('
alias.Klient.FieldByName('kod'
alias.Klient.FieldByName('tel'
alias.Klient.FieldByName('
alias.Klient.Post;
fkz.Close;
end;
procedure TFKZ.FormActivate(Sender: TObject);
begin
// при запуску форми
автоматично присвоює відповідн
// функція IntToStr переводить числове значення в текстове
// функція StrToInt переводить текстове значення в числове
fkz.Edit2.Text:=alias.Klient.
fkz.Edit1.Text:=IntToStr(
fkz.Edit3.Text:=IntToStr(
fkz.Edit4.Text:=alias.Klient.
end;
end.
unit UT1;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
ToolEdit, CurrEdit, StdCtrls, Mask, Buttons, ExtCtrls, RzEdit;
type
TFT1 = class(TForm)
Label1: TLabel;
Label2: TLabel;
Label3: TLabel;
Label4: TLabel;
Label5: TLabel;
Label6: TLabel;
MaskEdit1: TMaskEdit;
Edit1: TEdit;
CurrencyEdit1: TCurrencyEdit;
RzNumericEdit1: TRzNumericEdit;
Edit2: TEdit;
Edit3: TEdit;
Panel1: TPanel;
SpeedButton1: TSpeedButton;
SpeedButton2: TSpeedButton;
Label7: TLabel;
RzNumericEdit2: TRzNumericEdit;
procedure FormActivate(Sender: TObject);
procedure SpeedButton1Click(Sender: TObject);
procedure SpeedButton2Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
FT1: TFT1;
implementation
uses Ualias;
{$R *.DFM}
procedure TFT1.FormActivate(Sender: TObject);
begin
ft1.MaskEdit1.Text:='';
ft1.Edit1.Text:='';
ft1.CurrencyEdit1.Value:=0;
ft1.RzNumericEdit1.Value:=0;
ft1.RzNumericEdit2.Value:=0;
ft1.Edit2.Text:='';
ft1.Edit3.Text:='';
end;
procedure TFT1.SpeedButton1Click(Sender: TObject);
var a:Extended;
begin
// обраховує загальну ціну товару (ціна за одиницю*на кількість)
a:=ft1.CurrencyEdit1.Value*
alias.Tovar.Append;
alias.Tovar.FieldByName('kodt'
alias.Tovar.FieldByName('
alias.Tovar.FieldByName('
alias.Tovar.FieldByName('kl').
alias.Tovar.FieldByName('vurt'
alias.Tovar.FieldByName('prum'
alias.Tovar.FieldByName('
alias.Tovar.FieldByName('gar')
alias.Tovar.Post;
ft1.Close;
end;
procedure TFT1.SpeedButton2Click(Sender: TObject);
begin
ft1.Close;
end;
end.
unit UP;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
StdCtrls, Grids, DBGrids, ExtCtrls, Buttons, DBCtrls, Mask;
type
TFP = class(TForm)
GroupBox1: TGroupBox;
DBGrid1: TDBGrid;
GroupBox2: TGroupBox;
.....................
DBText10: TDBText;
DBEdit1: TDBEdit;
procedure SpeedButton3Click(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure RadioGroup1Click(Sender: TObject);
procedure SpeedButton1Click(Sender: TObject);
procedure SpeedButton2Click(Sender: TObject);
procedure RadioGroup2Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
FP: TFP;
implementation
uses Ualias;
{$R *.DFM}
procedure TFP.SpeedButton3Click(Sender: TObject);
begin
fp.Close;
end;
procedure TFP.FormCreate(Sender: TObject);
begin
fp.Edit1.Text:='';
// задаються опції для фільтрації бази
alias.Zamovl.FilterOptions:=[]
// відключаєм фільтрацію
alias.Zamovl.Filtered:=false;
end;
procedure TFP.RadioGroup1Click(Sender: TObject);
begin
case fp.RadioGroup1.ItemIndex of
// виводить записи тільки по продажу
:0 begin
// робимо активною DBGrid
fp.FocusControl(fp.DBGrid1);
// відключаєм фільтрацію
alias.Zamovl.Filtered:=false;
// включаєм фільтрацію
alias.Zamovl.Filtered:=true;
// фільтрує по заданому запису в Edit2
alias.Zamovl.Filter:=fp.Edit2.
end;
// виводить записи тільки по ремонту
1: begin
fp.FocusControl(fp.DBGrid1);
alias.Zamovl.Filtered:=false;
alias.Zamovl.Filtered:=true;
Информация о работе Автоматизована система Комп’ютерної фірми