Базы данных торговой фирмы

Автор работы: Пользователь скрыл имя, 22 Марта 2011 в 18:49, курсовая работа

Описание работы

Цель этой работы: создание программы ведения базы данных торговой фирмы. Программа включает в себя: формирование и корректирование файлов данных; расчет комиссионного вознаграждения сотрудников фирмы. Файл данных о продавце включает его имя и фамилию, табельный номер, дату поступления на работу. Торговая фирма выплачивает продавцам комиссионное вознаграждение в размере 5%, если товара продано на сумму менее 1000 долл. в день, и 6%, если выручка составляет 1000 долл./день и выше.

Содержание работы

Введение 3
Основная часть 6
1 Разработка эскизного и технического проектов программы 6
1.1 Назначение и область применения 6
1.2 Постановка задачи 6
1.3 Организация входных и выходных данных 6
1.4 Выбор состава технических и программных средств 6
2 Разработка рабочего проекта 8
2.1 Разработка программы 8
2.2 Спецификация программы 8
2.3 Текст программы 10
2.4 Описание программы 17
Заключение 19
Глоссарий 20
Список использованных источников 21
Приложение А 22

Файлы: 1 файл

Самсонов ЕА.doc

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

     var year,dohod:integer;

     begin

       Result:=0; //Изначально комиссионные = 0

       with form1.sg do

         begin

         year:=StrToInt(Cells[2,index]); //Узнаем год приема на работу

         Dohod:=StrToInt(Cells[3,index]); //И средний доход за день

         end;

       if god-year>=10 then //Если продавец работает 10 лет и больше

       Result:=Result+1; //Добавляем 1%

       if Dohod>=1000 then //Если еще и продает на сумму 1000 или больше

       Result:=Result+6 else //то добавляем 6%

       Result:=Result+5; //Если же нет, то 5%

     end; 

     procedure TForm1.SaveBD;

     var I:integer;

     s:TStringList; 

     begin

     S:=TStringList.Create;  //Создаем Список строк

     for i:=1 to sg.RowCount-2 do  //Проходим по всей таблице

       begin

       {Переносим в список данные  из таблицы}

       S.Add(Sg.Cells[0,i]);

       S.Add(Sg.Cells[1,i]);

       S.Add(Sg.Cells[2,i]);

       S.Add(Sg.Cells[3,i]);

       end;

     S.SaveToFile('Base.txt'); //Сохраняем

     S.Free; //Очищаем память

     end; 

     procedure Tform1.LoadBD; //Загрузка базы

     var I:integer;

     s:TstringList;

     begin

     sg.RowCount:=2;

     S:=TStringList.Create; //Создаем в памяти Список строк

     S.LoadFromFile('Base.txt'); //Загружаем в него файл с базой

     For i:=0 to S.Count div 4 -1 do //Организуем цикл загрузки 4х данных для каждого продавца

     begin

     sg.RowCount:=sg.RowCount+1; //Увеличиваем таблицу на 1 пункт

     {Помещаем  в таблицу данные}

     sg.Cells[0, sg.RowCount-2]:=S[i*4];

     sg.Cells[1, sg.RowCount-2]:=S[i*4+1];

     sg.Cells[2, sg.RowCount-2]:=S[i*4+2];

     sg.Cells[3, sg.RowCount-2]:=S[i*4+3];

     sg.Cells[4, sg.RowCount-2]:=IntToStr(CalcComiss(sg.RowCount-2));

     end;

     S.Free;  //Очищаем память от уже ненужного файла

     end; 

     procedure TForm1.FormCreate(Sender: TObject);

     begin

     {Заполняем  заголовок таблицы}

     sg.Cells[0,0]:='Фамилия и имя продавца';

     sg.Cells[1,0]:='Табельный номер';

     sg.Cells[2,0]:='Год приема на работу';

     sg.Cells[3,0]:='Выручка $ за день';

     sg.Cells[4,0]:='% комиссионных';

     God:=StrToInt(Copy(DateToStr(Date),7,4)); //Узнаем нынешний год

     LoadBD; //Загружаем базу с диска

     end; 

     procedure TForm1.N5Click(Sender: TObject);

     begin

     close; //Выход

     end; 

     procedure TForm1.N8Click(Sender: TObject);

     var i, j:integer;

     begin

     {Удаление  продавца из списка, все следующие  за ним продавцы, просто поднимаются  на ячейку выше}

     if sg.Selection.Top<>sg.RowCount-1 then

     begin

     for i:=sg.Selection.Top+1 to sg.RowCount-1 do

     for j:=0 to 4 do

     sg.Cells[j,i-1]:=sg.Cells[j,i];

     sg.RowCount:=sg.RowCount-1;

     end;

     end; 

     procedure TForm1.N2Click(Sender: TObject);

     begin

     LoadBd;  //Загружаем базу с диска 

     end;

     procedure TForm1.N3Click(Sender: TObject);

     begin

     SaveBD; //Сохраняем

     end; 

     procedure TForm1.N10Click(Sender: TObject);

     begin

     ShowMessage('Выполнил Самсонов Евгений '+#13+'Группа ОИ-809'); //Автор

     end; 

     procedure TForm1.N7Click(Sender: TObject);

     var I:integer;

     begin

     {Открываем  окно "Добавить" и в случае  нажатия на кнопку Ok, добавляем продавца в таблицу}

     Form2.Caption:='Добавить';

     for i:=1 to 4 do  //Цикл очистки полей  ввода

     TEdit(Form2.FindComponent('Edit'+inttostr(i))).text:='';

     if form2.showmodal=mrOk then

       begin

       sg.RowCount:=sg.RowCount+1; //Увеличиваем таблицу на 1 пункт

       {Помещаем в таблицу данные}

       sg.Cells[0, sg.RowCount-2]:=Form2.Edit1.Text;

       sg.Cells[1, sg.RowCount-2]:=Form2.Edit2.Text;

       sg.Cells[2, sg.RowCount-2]:=Form2.Edit3.Text;

       sg.Cells[3, sg.RowCount-2]:=Form2.Edit4.Text;

       sg.Cells[4, sg.RowCount-2]:=IntToStr(CalcComiss(sg.RowCount-2)); 

       end;

     end; 

     procedure TForm1.N9Click(Sender: TObject);

     var i:integer;

     begin

     if sg.Selection.Top<>sg.RowCount-1 then

     begin

     Form2.Caption:='Изменить';

     for i:=1 to 4 do

     TEdit(Form2.FindComponent('Edit'+inttostr(i))).text:=sg.cells[i-1,sg.selection.top];

     if form2.showmodal=mrOk then

       begin

       {Помещаем в таблицу данные}

       sg.Cells[0, sg.selection.top]:=Form2.Edit1.Text;

       sg.Cells[1, sg.selection.top]:=Form2.Edit2.Text;

       sg.Cells[2, sg.selection.top]:=Form2.Edit3.Text;

       sg.Cells[3, sg.selection.top]:=Form2.Edit4.Text;

       sg.Cells[4, sg.selection.top]:=IntToStr(CalcComiss(sg.selection.top));

       end;

     end;

     end; 

     procedure TForm1.N11Click(Sender: TObject);

     var summ,kom:integer;

     i,j,k,z:integer;

     days:integer;

     begin

     case StrToInt(copy(DateToStr(Date),4,2)) of

     1,3,5,7,8,10,12:days:=31;

     2: days:=28;

     else days:=30;

     end;

     summ:=0;

     Kom:=0;

     z:=0;

     for i:=1 to sg.RowCount-2 do

       begin

       j:=calccomiss(i);

       k:=strtoint(sg.cells[3,i])*days;

       j:=Trunc((j / 100)*K);

       kom:=kom+j;

       z:=z+k-j;

       summ:=summ+k;

       end; 

     showmessage('Общий  доход за этот месяц: '+inttostr(summ)+#13#10+'Комиссионные  выплаты: '+inttostr(kom)+#13#10+'Доход с вычетом  выплат комиссионных: '+inttostr(z)+#13#10+'Дней в этом месяце: ' +inttostr(days));

     end; 

     end.

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

 

     1) Общие сведения.

     Программа написана с среде программирования Delphi. Для запуска программы необходима операционная система Windows 98, Nt, 2000, Me, XP. Программа не предназначена для работы в DOS.

     2) Функциональное назначение.

     Программа может использоваться на различных  торговых точках с небольшим количеством  продавцов.

     3) Используемые технические средства (минимальные требования).

     Рекомендуемые системные требования: процессор Pentium-133 и выше, ОЗУ 16Мб, место на диске не меньше 4Мб.

     4) Вызов и загрузка.

     Исполняемый файл программы – Basa.exe. В родительском каталоге программы также содержится файл БД – Base.txt. Запустить программу можно пользуясь стандартным приложением для Windows «проводник» или через «Мой компьютер», просмотрев содержимое диска.

     5) Входные данные.

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

     6) Выходные данные.

     Выходные  данные выводятся на экран компонентом StringGrid. 
 
 
 
 
 
 
 
 

     Заключение

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

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

     1) Условия выполнения программы.

     Для выполнения программы необходим IBM совместимый компьютер с процессором  133МГц и выше, ОЗУ объемом не менее 16Мб и стандартным набором внутренних и внешних устройств. Программное обеспечение – ОС Windows 95 и более поздние версии Windows.

     2) Выполнение программы.

     Для того чтобы запустить программу  на панели управления щелкните кнопкой мыши кнопку Пуск. Выберете в развернувшимся меню пункт Программы->проводник. В проводнике выберете нужный каталог с файлом Basa.exe и дважды щелкните по нему левой кнопкой мыши. Программа запустится.

     При выборе в главном меню пункта «Автор» появляется сообщение с краткой информацией о программе и разработчике (см. рис.2). 

     

     Рисунок 2 – Окно «Автор»

     Глоссарий

 
Понятия Определение
1 Объектно-ориентированное  программирование подход к  программированию,  рассматривающий  программу  как совокупность объектов и сообщений
2  
Объект
пакет информации, содержащий данные и процедуры их обработки. Сообщение – это спецификация условий выполнения одной из процедур обработки объекта
3  
 
Язык  программирования
система обозначений, служащая для точного описания программ или алгоритмов  машинных вычислений. Язык программирования – это искусственный язык, в котором алфавит ( набор различных символов языка), синтаксис (правила построения множества текстов или конструкций языка из алфавита языка) и семантика (описание соответствия между текстами и их «смыслами») строго и однозначно определены
4 Операция действие в  языке программирование, которое  выполняется над данными
5 Структура

программы

общая схема  построения программы, рассматривающая  все ее составные компоненты и взаимосвязи между ними
6 Оператор  присваивания оператор языка  программирования, предназначенный  для вычисления значения заданного  выражения и записи в память полученного  результата
7  
Файл
определенным  образом организованная совокупность данных, имеющих общее имя и размещенных на одном из внешних устройств компьютера (например, на жестком  или гибком дисках)
8 Оператор  ввода данных специальный оператор, предназначенный для ввода данных в память из файла, закрепленного  за одним из внешних устройств  компьютера
9 Оператор  вывода данных специальный оператор, предназначенный для вывода данных из памяти в файл, закрепленный за одним  из внешних устройств компьютера
10

     Качество

программы

степень соответствия программы своему функциональному  назначению с точки зрения предъявляемых к ней требований

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