Автор работы: Пользователь скрыл имя, 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
Button2.Enabled:=False;
end;
end.
Листинг файла Unit3.pas
unit
Unit3;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
StdCtrls, ExtCtrls, jpeg;
type
TForm3 = class(TForm)
Button1: TButton;
Button2: TButton;
Memo1: TMemo;
Bevel2: TBevel;
Bevel1: TBevel;
procedure Button1Click(Sender: TObject);
procedure FormActivate(Sender: TObject);
procedure Button2Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form3: TForm3;
tcount:Integer;{количество сотрудников}
i:Integer;{переменная для циклов}
year:Integer;{текущий год}
old:array[1..10000] of Integer;
priz:array[1..10000] of Real;
implementation
Uses
Unit1, Unit2, Unit4;
{$R
*.DFM}
procedure find_tcount;
Begin
{Нахождение количества сотрудников}
tcount:=0;
for i:=1 to Form2.StringGrid1.RowCount do
begin
if Form2.StringGrid1.Cells[0,i]<>
tcount:=tcount+1;
end;
if tcount=0 then
MessageDlg('В
таблице нет ни одного сотрудника!',mtError,[mbOk],0)
End;
procedure old_man;
var
sy0, sy:String;
iy:Integer;
ol:Integer;
Begin
{Определяет
сколько лет проработал
for i:=1 to tcount do
begin
sy0:=Form2.StringGrid1.Cells[
sy:=copy(sy0,Length(sy0)-3,4);
iy:=StrToInt(sy);
ol:=year-iy;
old[i]:=ol;
end;
End;
procedure find_priz;
var
ts:Integer;{выручка}
fs:String;{итог}
Begin
{Вычисление вознаграждений}
form4.ListBox1.Items.Add(
form4.ListBox2.Items.Add(
for i:=1 to tcount do
begin
ts:=Round(StrToInt(Form2.
if ts<1000 then
priz[i]:=0.05*ts else
priz[i]:=0.06*ts;
if old[i]>10 then
priz[i]:=priz[i]+0.01*ts;
fs:=Form2.StringGrid1.Cells[0,
fs:=fs+' '+Form2.StringGrid1.Cells[1,i]
fs:=fs+' : '+IntToStr(ts);
form4.ListBox1.Items.Add(fs);
fs:=Form2.StringGrid1.Cells[0,
fs:=fs+' '+Form2.StringGrid1.Cells[1,i]
fs:=fs+' : '+FloatToStr(priz[i]);
form4.ListBox2.Items.Add(fs);
end;
form4.ListBox1.Items.Add(
form4.ListBox2.Items.Add(
End;
procedure TForm3.Button1Click(Sender: TObject);
begin
{Показать итоги}
Form4.ShowModal;
end;
procedure TForm3.FormActivate(Sender: TObject);
begin
{}
Button1.Enabled:=False;
end;
procedure TForm3.Button2Click(Sender: TObject);
var
cc:Integer;
ys,ys1:String;
begin
{Выполнить}
for cc:=1 to Form2.StringGrid1.RowCount do
begin
if
(Form2.StringGrid1.Cells[5,cc]
Application.
end;
ys:=DateToStr(Date);
ys1:=copy(ys,Length(ys)-
year:=StrToInt(ys1);
Form4.ListBox1.Items.
Form4.ListBox2.Items.
find_tcount;
old_man;
find_priz;
Button1.Enabled:=True;
end;
end.
Листинг файла Unit4.pas
unit
Unit4;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
StdCtrls, ExtCtrls, jpeg;
type
TForm4 = class(TForm)
GroupBox1: TGroupBox;
GroupBox2: TGroupBox;
ListBox1: TListBox;
ListBox2: TListBox;
Button1: TButton;
Button2: TButton;
Bevel1: TBevel;
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form4: TForm4;
implementation
Uses
Unit1, Unit2, Unit3;
{$R
*.DFM}
procedure TForm4.Button1Click(Sender: TObject);
begin
{Сохранить в файл}
Form4.ListBox1.Items.
Form4.ListBox2.Items.
MessageDlg('Информация
сохранена в файл "Итоги[-выручка|-
end;
procedure TForm4.Button2Click(Sender: TObject);
begin
{Вернуться к запросу}
Form4.Close;
end;
end.
Общие сведения:
Программа
ведения базы данных торговой фирмы.
Программное обеспечение
Функциональное назначение:
Ведение
общей базы данных, а так же расчёт
комиссионных вознаграждений для сотрудников
торговой фирмы.
Используемые технические средства:
IBM-совместимый
компьютер с установленной операционной
системой Windows 9x. Интегрированная среда
разработки Delphi 7.
Вызов и загрузка:
Вызов
программы можно произвести из любого
файлового менеджера и запуска исполняемого
файла asdb.exe.
Входные данные:
Используются
файлы текстового формата (но с расширением
*.tab), загружаемые в процессе работы программы,
а так же данные, вводимые пользователем
с клавиатуры.
Выходные данные:
Используются файлы текстового формата.
Для тестирования программа была установлена на компьютер пользователя и запущена. Была создана новая база данных, произведено её редактирование, сохранение данных как в обычные файлы, так и в файлы резервной копии. После этого в качестве эксперимента были удалены файлы БД (*.tab). Поскольку программой производилось резервное копирование данных, база данных была успешно восстановлена. Для тестирования правильности расчётов комиссионных вознаграждений в таблицу были введены случайные данные, затем программа выполнила расчеты по заложенному в неё алгоритму. Эти же расчеты были параллельно проведены на калькуляторе, а результаты сверены. После анализа результатов всех проведённых действий программа был сделан вывод о работоспособности программы.
Условия выполнения программы:
Системные
требования к компьютеру: процессор
Intel 80486 (рекомендуется Pentium 100), память 8
Мб (рекомендуется 16 Мб), Видео 640*480 256 цветов,
HDD 200 Мб, клавиатура, мышь, операционная
система Windows 95/98/NT или совместимые с ними.
Выполнение программы:
Запустить
программу из любого файл-менеджера.
После запуска автоматически
открывается таблица с БД. Здесь
производится либо редактирование таблицы,
либо операции с данными или вычисления.
Эти действия доступны из главного меню
приложения, после закрытия окна с таблицей.
Сообщения оператору:
Во время работы программы могут выводятся следующие диалоговые сообщения:
|
Запрос на сохранение данных в таблице. Если данные нужно сохранить, нажмите кнопку Yes |
|
Возможная ошибка при расчёте вознаграждений. Необходимо, чтобы в БД был хотя бы один сотрудник |
|
Запрос на обнуление сумм продаж за последний месяц. Задаётся первого числа каждого месяца. При появлении в 1-й раз следует ответить Да. При последующем появлении следует отказаться. |
|
Информирует пользователя о том, что резервное копирование закончено |
|
Информирует пользователя о том, что в рабочем каталоге нет одного или нескольких файлов данных. После появления этого сообщения приложение будет автоматически закрыто. Следует перезапустить приложение |
Я разработал программу
ведения баз данных для торговой
фирмы. С помощью моей программы
можно без затруднений и
Кнопочная форма позволяет просматривать отчеты об общей выручке в текущем месяце, комиссионных выплатах и доходах с учетом комиссионных выплат.
На примере моей программы ведения базы данных для торговой фирмы, я предоставил к рассмотрению функции и возможности написания подобных программ при помощи Delphi. Эта программа достаточно проста и удобна в обращении.
Информация о работе Создание программы ведения базы данных торговой фирмы