Мегаобучалка Главная | О нас | Обратная связь


Назначение и область применения



2020-03-19 128 Обсуждений (0)
Назначение и область применения 0.00 из 5.00 0 оценок




 

Назначение программы: ведение учета работы продавцов.

Область применения: справочная информация.

Постановка задачи

 

База данных представляет собой диалоговое окно с пользователем. Программа должна обеспечивать хранение, редактирование данных продавцов и содержать поля: Фамилия и имя, Табельный номер, год приема на работу и выручка в день.

 

Организация входных и выходных данных

 

В программе используются следующие переменные и объекты, в которых хранятся входные и выходные данные:

Form1 – для отображения данных базы.

StringGrid – таблица, содержащая БД.

MainMenu – для сервисных функций.

Form2 – для ввода и изменения данных в базе.

Выбор состава технических и программных средств

 

Среда программирования – Delphi – весьма быстрая и удобная для разработки приложений различного назначения для Windows. Для нормальной работы программы необходим IBM совместимый компьютер с тактовой частотой процессора не ниже 144МГц и выше, оперативной памятью 16 Мб, жесткий диск объемом не менее 500Мб.

 

 

Разработка рабочего проекта

 

Разработка программы

 

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

В настоящее время существует достаточно большое количество программных систем, позволяющих создавать и использовать локальные (dBASE, FoxPro, Access, Paradox) и удаленные (Interbase, Oracle, Sysbase, Infomix, Microsoft SQL Server) базы данных.[2]

В состав Delphi входят компоненты, позволяющие создавать программы работы с файлами данных, созданными различными системами: от SE до Infomix и Oracle. Delphi также позволяет программисту, используя утилиту Borland Database Desktop, создавать файлы баз данных в Различных форматах.

 

Спецификация программы

 

База данных — это набор однородной, как правило, упорядоченной по некоторому критерию, информации. База данных может быть представлена в "бумажном" или в компьютерном виде. Типичным примером "бумажной" базы данных является каталог библиотеки — набор бумажных карточек, содержащих информацию о книгах. Информация в этой базе однородная (содержит сведения только о книгах) и упорядоченная (карточки расставлены, например, в соответствии с алфавитным порядком фамилий авторов). [3]

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

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

База данных — это набор файлов (таблиц), в которых находится информация. Как правило, база данных состоит из нескольких таблиц, которые размещают в одном каталоге. Каталог для новой базы данных создается обычным образом, например, при помощи Проводника.

Исполняемый файл программы «База данных Торговая фирма» имеет название Basa.exe и находится в корневом каталоге диска А. Состав проекта представлен в приложении.

                               

 

Текст программы

 

unit Unit1;

interface

uses

Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

Dialogs, Grids, Menus, StdCtrls;

type

TForm1 = class(TForm)

sg: TStringGrid;

mm: TMainMenu;

N1: TMenuItem;

N2: TMenuItem;

N3: TMenuItem;

N4: TMenuItem;

N5: TMenuItem;

N6: TMenuItem;

N7: TMenuItem;

N8: TMenuItem;

N9: TMenuItem;

N10: TMenuItem;

N11: TMenuItem;

procedure FormCreate(Sender: TObject);

procedure N5Click(Sender: TObject);

procedure N8Click(Sender: TObject);

procedure N2Click(Sender: TObject);

procedure N3Click(Sender: TObject);

procedure N10Click(Sender: TObject);

procedure N7Click(Sender: TObject);

procedure N9Click(Sender: TObject);

procedure N11Click(Sender: TObject);

private

 

{ Private declarations }

public

  

 { Public declarations }

Procedure LoadBD; //Загрузка Базы

Procedure SaveBD; //Сохранение Базы

end;

 

var

Form1: TForm1;

God: integer; //Нынешний год

implementation

 

uses Unit2;

 

{$R *.dfm}

function CalcComiss(index:integer):integer; //Подсчет комиссионных по номеру продавца в таблице

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.

 

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

 

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 Качество программы степень соответствия программы своему функциональному назначению с точки зрения предъявляемых к ней требований


2020-03-19 128 Обсуждений (0)
Назначение и область применения 0.00 из 5.00 0 оценок









Обсуждение в статье: Назначение и область применения

Обсуждений еще не было, будьте первым... ↓↓↓

Отправить сообщение

Популярное:
Генезис конфликтологии как науки в древней Греции: Для уяснения предыстории конфликтологии существенное значение имеет обращение к античной...
Как распознать напряжение: Говоря о мышечном напряжении, мы в первую очередь имеем в виду мускулы, прикрепленные к костям ...
Почему человек чувствует себя несчастным?: Для начала определим, что такое несчастье. Несчастьем мы будем считать психологическое состояние...



©2015-2024 megaobuchalka.ru Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. (128)

Почему 1285321 студент выбрали МегаОбучалку...

Система поиска информации

Мобильная версия сайта

Удобная навигация

Нет шокирующей рекламы



(0.01 сек.)