Автор работы: Пользователь скрыл имя, 02 Апреля 2013 в 08:28, курсовая работа
Целью данной курсовой работы является исследование концептуального моделирования баз данных, задачей является создание концептуальной модели БД.
Введение 3
1 Разработка эскизного и технического проектов программы 5
1.1 Задание 5
1.2 Назначение и область применения 5
1.3 Технические характеристики 5
1.3.1 Постановка задачи 5
1.3.2 Описание алгоритма 8
1.3.3 Организация входных и выходных данных 11
1.3.4 Выбор состава технических и программных средств 13
2 Разработка рабочего проекта 16
2.1 Разработка программы 16
2.2 Спецификация программы 28
2.3 Текст программы 31
2.4 Описание программы 51
2.4.1 Общие сведения 51
2.4.3 Описание логической структуры 51
2.4.4 Используемые технические средства 52
Заключение 53
Список используемой литературы 54
Label28: TLabel; Label29: TLabel; DBEdit29: TDBEdit;
Label30: TLabel; DBEdit30: TDBEdit; Label31: TLabel;
DBEdit31: TDBEdit; DBEdit32: TDBEdit; Label32: TLabel;
LabeledEdit4: TLabeledEdit; SpeedButton9: TSpeedButton;
SpeedButton10: TSpeedButton; DBEdit33: TDBEdit;
Label33: TLabel; DBEdit34: TDBEdit; Label34: TLabel;
DBEdit35: TDBEdit; Label35: TLabel; DBEdit36: TDBEdit;
Label36: TLabel; Label37: TLabel; DBEdit37: TDBEdit;
Label38: TLabel; DBEdit38: TDBEdit; Label39: TLabel;
DBEdit39: TDBEdit; DBEdit40: TDBEdit; Label40: TLabel;
LabeledEdit5: TLabeledEdit;
procedure SpeedButton2Click(Sender: TObject);
procedure SpeedButton3Click(Sender: TObject);
procedure SpeedButton6Click(Sender: TObject);
procedure SpeedButton8Click(Sender: TObject);
procedure SpeedButton10Click(Sender: TObject);
procedure SpeedButton4Click(Sender: TObject);
procedure SpeedButton1Click(Sender: TObject);
procedure SpeedButton5Click(Sender: TObject);
procedure SpeedButton7Click(Sender: TObject);
procedure SpeedButton9Click(Sender: TObject);
private { Private declarations }
public { Public declarations }
end;
var FTPoisk: TFTPoisk;
implementation
uses UDM;
{$R *.dfm}
procedure TFTPoisk.SpeedButton2Click(
begin
DM.Ttov.Locate('naz_tov',
end;
procedure TFTPoisk.SpeedButton3Click(
begin
DM.Ttov.Locate('bez_nds',
end;
procedure TFTPoisk.SpeedButton6Click(
begin
DM.Ttov.Locate('tmb',
end;
procedure TFTPoisk.SpeedButton8Click(
begin
DM.Ttov.Locate('gost',
end;
procedure TFTPoisk.SpeedButton10Click(
begin
DM.Ttov.Locate('marka',
end;
procedure TFTPoisk.SpeedButton4Click(
begin
close;
end;
procedure TFTPoisk.SpeedButton1Click(
begin
close;
end;
procedure TFTPoisk.SpeedButton5Click(
begin
close;
end;
procedure TFTPoisk.SpeedButton7Click(
begin
close;
end;
procedure TFTPoisk.SpeedButton9Click(
begin
close;
end;
end.
unit UZakaz; interface uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ImgList, ComCtrls, ToolWin, Grids, DBGrids, ExtCtrls, StdCtrls,
DBCtrls;
Type TFZakaz = class(TForm)
DBGrid1: TDBGrid; ToolBar1: TToolBar; TBFirst: TToolButton;
ToolButton2: TToolButton; ToolButton3: TToolButton;
ToolButton4: TToolButton; ToolButton5: TToolButton;
ToolButton6: TToolButton; ToolButton7: TToolButton;
ToolButton1: TToolButton; ImageList1: TImageList;
Panel1: TPanel; ToolButton8: TToolButton;
DBText1: TDBText; Label1: TLabel;
DBText2: TDBText; DBText3: TDBText;
DBText4: TDBText; DBText5: TDBText;
DBText6: TDBText; DBText7: TDBText;
DBText8: TDBText; DBText9: TDBText;
DBText10: TDBText; Label2: TLabel; Label3: TLabel;
Label4: TLabel; Label5: TLabel; Label6: TLabel;
Label7: TLabel; Label8: TLabel; Label9: TLabel;
Shape1: TShape; Label10: TLabel; Shape2: TShape;
Label11: TLabel; Shape3: TShape; Label12: TLabel;
Edit1: TEdit; procedure TBFirstClick(Sender: TObject);
procedure ToolButton2Click(Sender: TObject);
procedure ToolButton3Click(Sender: TObject);
procedure ToolButton4Click(Sender: TObject);
procedure ToolButton5Click(Sender: TObject);
procedure ToolButton6Click(Sender: TObject);
procedure ToolButton7Click(Sender: TObject);
procedure ToolButton1Click(Sender: TObject);
procedure ToolButton8Click(Sender: TObject);
procedure FormActivate(Sender: TObject);
procedure Edit1Change(Sender: TObject);
private { Private declarations }
public { Public declarations }
end;
var
FZakaz: TFZakaz; a:byte;
implementation
uses UDM, Umain, UDobZakaz;
{$R *.dfm}
procedure TFZakaz.TBFirstClick(Sender: TObject);
begin
DM.Tzakaz.First;
end;
procedure TFZakaz.ToolButton2Click(
begin
DM.Tzakaz.Prior;
end;
procedure TFZakaz.ToolButton3Click(
begin
DM.Tzakaz.Next;
end;
procedure TFZakaz.ToolButton4Click(
begin
DM.Tzakaz.Last;
end;
procedure TFZakaz.ToolButton5Click(
begin
DM.Tzakaz.post;
end;
procedure TFZakaz.ToolButton6Click(
begin
DM.Tzakaz.Delete;
end;
procedure TFZakaz.ToolButton7Click(
var n:integer;
begin
DM.Tzakaz.Last;
n:=DM.Tzakaz.FieldByName('nz')
DM.Tzakaz.Append;
DM.Tzakaz.FieldByName('nz').
FDobZakaz.show;
end;
procedure TFZakaz.ToolButton1Click(
begin
case a of
0:begin
Height:=697;
Panel1.Height:=201;
Position:=poScreenCenter; a:=1;
ToolButton1.ImageIndex:=9;
ToolButton1.hint:='Закрыть панель поиска'
end;
1: begin
DBGrid1.DataSource:= dm.DSZakaz;
Height:=486;
Panel1.Height:=0;
Position:=poScreenCenter;
a:=0;
ToolButton1.ImageIndex:=8;
ToolButton1.hint:='Открыть панель поиска';
Edit1.SetFocus;
end;
end;
end;
procedure TFZakaz.ToolButton8Click(
begin
Fmain.Show;
close;
end;
procedure TFZakaz.FormActivate(Sender: TObject);
begin
a:=0;
end;
procedure TFZakaz.Edit1Change(Sender: TObject);
begin
dm.QZakaz1.Close;
dm.QZakaz1.Parameters[0].
dm.QZakaz1.Open;
DBGrid1.DataSource:= dm.DSQZakaz1;
end;
end.
unit UZapr;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, Buttons, ExtCtrls, DBCtrls, Grids, DBGrids;
Type TForm1 = class(TForm)
DBGrid1: TDBGrid; DBNavigator1: TDBNavigator;
SpeedButton2: TSpeedButton; SpeedButton4: TSpeedButton;
procedure SpeedButton4Click(Sender: TObject);
procedure SpeedButton2Click(Sender: TObject);
private { Private declarations }
public { Public declarations }
end;
var Form1: TForm1;
implementation
uses UDM;
{$R *.dfm}
procedure TForm1.SpeedButton4Click(
begin
close;
end;
procedure TForm1.SpeedButton2Click(
begin
DM.QZapros.Close;
DM.QZapros.Open;
end;
end.
unit UDobTovar;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, Buttons, ExtCtrls, StdCtrls, DBCtrls, Mask, BDE;
type
TFDobTov = class(TForm)
GroupBox1: TGroupBox; DBEdit3: TDBEdit; DBEdit5: TDBEdit;
DBEdit7: TDBEdit; DBEdit8: TDBEdit; DBEdit9: TDBEdit;
DBEdit1: TDBEdit; DBEdit2: TDBEdit; Label1: TLabel;
Label2: TLabel; Label3: TLabel; Label4: TLabel;
Edit1: TEdit; Label5: TLabel; Label6: TLabel;
Label7: TLabel; Label8: TLabel; Label9: TLabel;
DBComboBox1: TDBComboBox; Panel1: TPanel;
Panel2: TPanel; SpeedButton1: TSpeedButton;
SpeedButton2: TSpeedButton; SpeedButton3: TSpeedButton;
SpeedButton4: TSpeedButton; DBEdit4: TDBEdit;
procedure SpeedButton1Click(Sender: TObject);
procedure SpeedButton2Click(Sender: TObject);
procedure SpeedButton3Click(Sender: TObject);
procedure SpeedButton4Click(Sender: TObject);
procedure FormActivate(Sender: TObject);
private { Private declarations }
public { Public declarations }
end;
var FDobTov: TFDobTov;
implementation
uses UDM, UTovar;
{$R *.dfm}
procedure TFDobTov.SpeedButton1Click(
begin
DBEdit4.Text:=floattostr(
DM.Ttov.post;
end;
procedure TFDobTov.SpeedButton2Click(
begin
DM.Ttov.Append;
end;
procedure TFDobTov.SpeedButton3Click(
begin
DM.Ttov.Cancel;
FTovar.Show;
Close;
end;
procedure TFDobTov.SpeedButton4Click(
begin
FTovar.Show;
Close;
end;
procedure TFDobTov.FormActivate(Sender: TObject);
var n:integer;
begin
DM.Ttov.Last;
n:=DM.Ttov.FieldByName('idn').
DM.Ttov.Append;
DM.Ttov.FieldByName('idn').
end;
end.
unit UInvVed1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, Mask, DBCtrls, Buttons;
type
TFInvVed = class(TForm)
ComboBox1: TComboBox; Label1: TLabel; DBEdit1: TDBEdit;
SpeedButton1: TSpeedButton; SpeedButton2: TSpeedButton;
procedure FormActivate(Sender: TObject);
procedure ComboBox1Change(Sender: TObject);
procedure SpeedButton2Click(Sender: TObject);
procedure SpeedButton1Click(Sender: TObject);
private { Private declarations }
public { Public declarations }
end;
var FInvVed: TFInvVed;
implementation
uses UDM, URepIVed;
{$R *.dfm}
procedure TFInvVed.FormActivate(Sender: TObject);
begin
DM.Tklad.First;
while not DM.Tklad.Eof do begin
ComboBox1.Items.Add(DM.Tklad.
DM.Tklad.next;
end;
end;
procedure TFInvVed.ComboBox1Change(
begin
DM.Tklad.Locate('fio',
end;
procedure TFInvVed.SpeedButton2Click(
begin
close;
end;
procedure TFInvVed.SpeedButton1Click(
begin
FRepIVed.QRLabel12.Caption:=
FRepIVed.QRLabel13.Caption:=
FRepIVed.QuickRep1.Preview;
end;
end.
2.4. Описание программы
2.4.1 Общие сведения
Программа «Арм кладовщика» запускается с помощью файла ARM_klad.exe. Для нормального функционирования приложения необходимы программные средства – операционная система Windows 95/98, Windows NT/2000/XP, BDE Administrator, MS Word. Программа написана в среде Delphi? На языке Object Pascal. Таблицы созданы в СУБД Paradox.
2.4.2 Функциональное назначение
Согласно заданию, необходимо было разработать базу данных «склад.» Автоматизации подлежит задача «Учет поступления и отпуска товаров» и решается с целью получения актуальной информации о выдаче товара со склада по заказам клиентов, поступления товаров на склад от поставщиков, о клиентах, поставщиках и товарах на складе.
Ограничения и допущения:
- номенклатурный номер товара уникален
- табельный номер сотрудника уникален
- номер договора уникален
- банковские реквизиты заказчика уникальны
- код фирмы поставщика уникален
2.4.3 Описание логической структуры
Программа разработана
на основе принципов объектно-