Создание программы ведения базы данных торговой фирмы

Автор работы: Пользователь скрыл имя, 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

Содержимое работы - 1 файл

Пояснительная записка.doc

— 314.50 Кб (Скачать файл)

     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]<>'' then

       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[3,i];

       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.StringGrid1.Cells[4,i])/30);

       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,i];

       fs:=fs+' '+Form2.StringGrid1.Cells[1,i];

       fs:=fs+' : '+IntToStr(ts);

       form4.ListBox1.Items.Add(fs); 

       fs:=Form2.StringGrid1.Cells[0,i];

       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]='') and (Form2.StringGrid1.Cells[1,cc]<>'') then Form2.StringGrid1.Cells[5,cc]:='0';

     Application.ProcessMessages;

     end; 

     ys:=DateToStr(Date);

     ys1:=copy(ys,Length(ys)-3,4);

     year:=StrToInt(ys1);

     Form4.ListBox1.Items.Clear;

     Form4.ListBox2.Items.Clear; 

     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.SaveToFile('Итоги-выручка.txt');

     Form4.ListBox2.Items.SaveToFile('Итоги-вознаграждение.txt');

     MessageDlg('Информация сохранена в файл "Итоги[-выручка|-вознаграждение].txt"',mtInformation,[mbOk],0);

     end; 

     procedure TForm4.Button2Click(Sender: TObject);

     begin

     {Вернуться  к запросу}

     Form4.Close;

     end; 

     end.

 

      2.4 Описание программы

 

     Общие сведения:

     Программа ведения базы данных торговой фирмы. Программное обеспечение необходимое для работы приложения – операционная система Microsoft Windows 9x или NT. Программа написана с помощью интегрированной среды разработки Borland Delphi 7 . 

     Функциональное  назначение:

     Ведение общей базы данных, а так же расчёт комиссионных вознаграждений для сотрудников торговой фирмы. 

     Используемые  технические средства:

     IBM-совместимый компьютер с установленной операционной системой Windows 9x. Интегрированная среда разработки Delphi 7. 

     Вызов и загрузка:

     Вызов программы можно произвести из любого файлового менеджера и запуска исполняемого файла asdb.exe. 

     Входные данные:

     Используются  файлы текстового формата (но с расширением *.tab), загружаемые в процессе работы программы, а так же данные, вводимые пользователем с клавиатуры. 

     Выходные  данные:

     Используются  файлы текстового формата.

     2.5 Тестирование программы

 

     Для тестирования программа была установлена  на компьютер пользователя и запущена. Была создана новая база данных, произведено её редактирование, сохранение данных как в обычные файлы, так  и в файлы резервной копии. После этого в качестве эксперимента были удалены файлы БД (*.tab). Поскольку программой производилось резервное копирование данных, база данных была успешно восстановлена. Для тестирования правильности расчётов комиссионных вознаграждений в таблицу были введены случайные данные, затем программа выполнила расчеты по заложенному в неё алгоритму. Эти же расчеты были параллельно проведены на калькуляторе, а результаты сверены. После анализа результатов всех проведённых действий программа был сделан вывод о работоспособности программы.

 

      2.6 Внедрение

 

     Условия выполнения программы:

     Системные требования к компьютеру: процессор  Intel 80486 (рекомендуется Pentium 100), память 8 Мб (рекомендуется 16 Мб), Видео 640*480 256 цветов, HDD 200 Мб, клавиатура, мышь, операционная система Windows 95/98/NT или совместимые с ними. 

     Выполнение  программы:

     Запустить программу из любого файл-менеджера. После запуска автоматически  открывается таблица с БД. Здесь  производится либо редактирование таблицы, либо операции с данными или вычисления. Эти действия доступны из главного меню приложения, после закрытия окна с таблицей. 

     Сообщения оператору:

     Во  время работы программы могут  выводятся следующие диалоговые сообщения:

     
     Запрос  на сохранение данных в таблице. Если данные нужно сохранить, нажмите кнопку Yes
     
     Возможная ошибка при расчёте вознаграждений. Необходимо, чтобы в БД был хотя бы один сотрудник
     
     Запрос  на обнуление сумм продаж за последний  месяц. Задаётся первого числа каждого  месяца. При появлении в 1-й раз следует ответить Да. При последующем появлении следует отказаться.
     
     Информирует пользователя о том, что резервное  копирование закончено
     
     Информирует пользователя о том, что в рабочем  каталоге нет одного или нескольких файлов данных. После появления этого сообщения приложение будет автоматически закрыто. Следует перезапустить приложение

 

      Заключение 

Я разработал программу  ведения баз данных для торговой фирмы. С помощью моей программы  можно без затруднений и специальных  знаний вести базу данных, которая позволяет делать все необходимые операции по учету сотрудников. То есть добавлять, изменять, обновлять, удалять и просматривать все имеющиеся и вводимые данные.

Кнопочная форма  позволяет просматривать отчеты об общей выручке в текущем  месяце, комиссионных выплатах и доходах с учетом комиссионных выплат.

На примере  моей программы ведения базы данных для торговой фирмы, я предоставил  к рассмотрению функции и возможности  написания подобных программ при  помощи Delphi. Эта программа достаточно проста и удобна в обращении.

Информация о работе Создание программы ведения базы данных торговой фирмы