Автор работы: Пользователь скрыл имя, 17 Декабря 2010 в 18:53, курсовая работа
В данной работе я постарался отобразить один из вариантов использования баз данных (БД) в системах управления предприятиями. Целью данной работы является разработка приложения ведения БД торговой фирмы для Windows.
Основные данные о работе
Введение………………………………………………………………………...3
Назначение и область применения………… ……………………….……….3
1.Технические характеристики..………………………………………………4
1.1 Постановка задачи………………………………………………………….4
1.2 Описание алгоритма…………………………………………………….4
1.3 Организация входных и выходных данных………………………………6
1.4 Выбор состава технических и программных средств……………………7
2 Разработка программы….……………………………………………………8
2.1 Написание программы…………………………………………….………12
2.2 Спецификация программы…………………………………………….….12
2.3 Текст программы…………………………………………………….…….15
2.4 Описание программы……………………………………………….……..35
2.5 Тестирование программы…………………………………………………35
2.6 Внедрение………………………………………………………………….35
Заключение…………………………………………………………………….39
Приложение …………………………………………………………….…....41
Глоссарий……………………………………………………… ………..…….40
Список использованной литературы………………………………………....43
qqq:=False;
Form1.N4.Enabled:=False;
Form1.N12.Enabled:=False;
if not FileExists('name.tab') then
begin
FileCreate('name.tab');
qqq:=True;
end;
if not FileExists('surname.tab') then
begin
FileCreate('surname.tab')
qqq:=True;
end;
if not FileExists('number.tab') then
begin
FileCreate('number.tab');
qqq:=True;
end;
if not FileExists('date.tab') then
begin
FileCreate('date.tab');
qqq:=True;
end;
if not FileExists('sum.tab') then
begin
FileCreate('sum.tab');
qqq:=True;
end;
if not FileExists('allsum.tab') then
begin
FileCreate('allsum.tab');
qqq:=True;
end;
if qqq=True then
begin
MessageDlg('Создан один или несколько отсутствующих файлов.'+#13
+'Перезапустите программу.',mtWarning,[],0);
Application.Terminate;
end;
CheckBox1.Checked:=False;
Memo2.Visible:=False;
end;
procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);
var
a:Integer;
begin
{Сохранить данные}
a:=MessageDlg('Сохранить
данные в таблице?',
if a=6 then save_db;
end;
procedure TForm1.FormActivate(Sender: TObject);
begin
Form2.ShowModal;
end;
procedure TForm1.N11Click(Sender: TObject);
begin
{Создать резервную копию таблицы}
RenameFile('name.tab','
RenameFile('surname.tab',
RenameFile('number.tab','
RenameFile('date.tab','
RenameFile('sum.tab','
RenameFile('allsum.tab','
save_db;
MessageDlg('Резервная
копия находится в файлах *.bak',mtInformation,[],0);
Form1.N12.Enabled:=True;
end;
procedure TForm1.N12Click(Sender: TObject);
begin
{Восстановить данные из резервной копии}
DeleteFile('name.tab');
DeleteFile('surname.tab')
DeleteFile('number.tab');
DeleteFile('date.tab');
DeleteFile('sum.tab');
DeleteFile('allsum.tab');
RenameFile('name.bak','
RenameFile('surname.bak',
RenameFile('number.bak','
RenameFile('date.bak','
RenameFile('sum.bak','
RenameFile('allsum.bak','
Form1.N12.Enabled:=False;
Form2.ShowModal;
end;
procedure TForm1.CheckBox1Click(Sender: TObject);
begin
{Показать дополнительные сведения}
if CheckBox1.Checked=True then
Memo2.Visible:=True else
Memo2.Visible:=False;
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
Close;
end;
end.
Листинг файла Unit2.pas
unit
Unit2;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
Grids, StdCtrls, ExtCtrls, jpeg, Menus;
type
TForm2 = class(TForm)
StringGrid1: TStringGrid;
Button1: TButton;
Bevel1: TBevel;
Bevel2: TBevel;
PopupMenu1: TPopupMenu;
N1: TMenuItem;
Button2: TButton;
procedure Button1Click(Sender: TObject);
procedure FormActivate(Sender: TObject);
procedure N1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form2: TForm2;
//количество ячеек по умолчанию
default_colcount, default_rowcount: LongInt;
implementation
uses
unit1, Unit3, Unit4;
{$R
*.DFM}
procedure all_s;
var
c, s, s1:Integer;
Begin
{Подсчитать общую выручку}
for c:=1 to default_rowcount do
begin
if (form2.StringGrid1.Cells[5,c]<
begin
s1:=StrToInt(form2.
s:=StrToInt(form2.StringGrid1.
form2.StringGrid1.Cells[4,c]:=
end;
end;
End;
procedure load_db;
var
ftname:TextFile;
ftsurname:TextFile;
ftnumber:TextFile;
ftdate:TextFile;
ftsum:TextFile;
ftallsum:TextFile;
t:Integer;
fts:String;
Begin
{Загрузка данных в таблицу}
AssignFile(ftname,'name.
Reset(ftname);
t:=1;
While not EOf(ftname) do
begin
Readln(ftname,fts);
Form2.StringGrid1.Cells[0,t]:=
t:=t+1;
end;
CloseFile(ftname);
AssignFile(ftsurname,'
Reset(ftsurname);
t:=1;
While not EOf(ftsurname) do
begin
Readln(ftsurname,fts);
Form2.StringGrid1.Cells[1,t]:=
t:=t+1;
end;
CloseFile(ftsurname);
AssignFile(ftnumber,'
Reset(ftnumber);
t:=1;
While not EOf(ftnumber) do
begin
Readln(ftnumber,fts);
Form2.StringGrid1.Cells[2,t]:=
t:=t+1;
end;
CloseFile(ftnumber);
AssignFile(ftdate,'date.
Reset(ftdate);
t:=1;
While not EOf(ftdate) do
begin
Readln(ftdate,fts);
Form2.StringGrid1.Cells[3,t]:=
t:=t+1;
end;
CloseFile(ftdate);
AssignFile(ftsum,'sum.
Reset(ftsum);
t:=1;
While not EOf(ftsum) do
begin
Readln(ftsum,fts);
Form2.StringGrid1.Cells[4,t]:=
t:=t+1;
end;
CloseFile(ftsum);
AssignFile(ftallsum,'
Reset(ftallsum);
t:=1;
While not EOf(ftallsum) do
begin
Readln(ftallsum,fts);
Form2.StringGrid1.Cells[6,t]:=
t:=t+1;
end;
CloseFile(ftallsum);
End;
procedure TForm2.Button1Click(Sender: TObject);
begin
{Закрыть}
Button2.Enabled:=True;
Form2.Close;
end;
procedure TForm2.FormActivate(Sender: TObject);
var
td0, td:String;
ti, ci:Integer;
begin
{инициализация}
default_colcount:=7;{
default_rowcount:=512;
StringGrid1.ColCount:=
StringGrid1.RowCount:=
StringGrid1.Cells[0,0]:='
StringGrid1.Cells[1,0]:='
StringGrid1.Cells[2,0]:='
StringGrid1.Cells[3,0]:='
StringGrid1.Cells[4,0]:='
StringGrid1.Cells[5,0]:='
StringGrid1.Cells[6,0]:='
load_db;
for ci:=1 to Form2.StringGrid1.RowCount do
begin
if
(Form2.StringGrid1.Cells[6,ci]
Application.
end;
td0:=DateToStr(Date);
td:=copy(td0,1,2);
if (td='01') and (MessageDlg('Сегодня первое число месяца.'+#13
+'Следует ли онулить сумму
продаж за последний месяц?',
begin
for ti:=1 to default_rowcount do
begin
if StringGrid1.Cells[4,ti]<>'' then
begin
StringGrid1.Cells[6,ti]:=
StringGrid1.Cells[4,ti]:='0';
end;
end;
end;
Form1.N4.Enabled:=True;
end;
procedure TForm2.N1Click(Sender: TObject);
begin
{Подсчитать общую выручку}
all_s;
end;
procedure TForm2.Button2Click(Sender: TObject);
begin
{Подсчитать общую выручку}
all_s;
Информация о работе Создание программы ведения базы данных торговой фирмы