Разработка программы "Учет работы строительной компании"
Описание алгоритма программы, полный листинг программного кода с комментариями. Организация входных и выходных данных, результаты работы программных форм. Технические средства и назначение программы. Условия выполнения и основные функции программы.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | курсовая работа |
Язык | русский |
Дата добавления | 13.12.2015 |
Размер файла | 670,0 K |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Размещено на http://www.allbest.ru/
1. НАЗНАЧЕНИЕ И ОБЛАСТЬ ПРИМЕНЕНИЯ
Приложение «Учет работы строительной компании» предназначено для осуществление строительных работ, информации о клиентах, работ и наименования услуг.
Программа «Учет работы строительной компании» должна быть реализована с помощью средств приложений Delphi 7 , Office access.
Данный модуль дает возможность вести учет строительной компании, и информацию о клиентах, включающую в себя: наименование услуг, стоимость, номер клиента, ФИО клиента, адрес клиента, паспорт клиента.
2. ТЕХНИЧЕСКИЕ ХАРАКТЕРИСТИКИ
2.1 ПОСТАНОВКА ЗАДАЧИ
Приложение Учет работы строительной компании разработано в Delphi с использованием Access. Необходимо разработать программу учет работы строительной компании. Данная программа содержит несколько вкладок о компании, сотрудники, услуги, клиенты, оформить заявку, оформить работы.
С помощью которых реализуются функции:
- Редактирование данных
- Добавление данных
- Удаление Данных
- Оформление работы
- Вывод в печатной форме
2.2 ОПИСАНИЕ АЛГОРИТМА ПРОГРАММЫ
Описание логической структуры
Поставка задачи: необходимо создать приложение для учета работы строительной компании.
База данных состоит из 5 таблиц: client, sotr, stroy, uslugi, zakaz.
Таблица 1. - «Client» включает в себя
Имя поля |
Тип поля |
|
ID_Client |
Счетчик |
|
FIO |
Текстовый |
|
Pasport |
Текстовый |
|
Telefon |
Текстовый |
Таблица 2. - «Sotr» включает в себя
Имя поля |
Тип поля |
|
ID_Sort |
Счетчик |
|
FIO |
Текстовый |
|
Adres |
Текстовый |
|
Pasport |
Текстовый |
|
DR |
Дата/время |
Таблица 3. - «stroy» включает в себя
Имя поля |
Тип поля |
|
ID_Stroy |
Счетчик |
|
ID_Zakaz |
Числовой |
|
Имя поля |
Тип данных |
|
ID_Sotr |
Числовой |
|
Uslugi |
Текстовый |
|
Cena |
Числовой |
|
Story_Data |
Дата/время |
Таблица 4. - «Usligi» включает в себя
Имя поля |
Тип данных |
|
ID_Usluga |
Счетчик |
|
Name_Usl |
Тектовый |
|
Cena |
Числовой |
Таблица 5. - «Zakaz» включает в себя
Имя поля |
Тип данных |
|
ID_Zakaz |
Счетчик |
|
ID_Client |
Числовой |
|
Zakaz_Data |
Дата/время |
|
Pojel |
Текстовый |
|
Status |
Текстовый |
Код программы выглядит следующим образом:
unit Unit1;
interface
uses
Windows,DB, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ComCtrls, StdCtrls, ExtCtrls, Grids, DBGrids, DBCtrls, Buttons;
type
TMain = class(TForm)
PageControl1: TPageControl;
TabSheet1: TTabSheet;
TabSheet2: TTabSheet;
TabSheet3: TTabSheet;
DBGrid5: TDBGrid;
Panel1: TPanel;
Button1: TButton;
Panel2: TPanel;
DBGrid1: TDBGrid;
Edit1: TEdit;
Label1: TLabel;
Label2: TLabel;
Edit2: TEdit;
Button2: TButton;
Button3: TButton;
Panel3: TPanel;
Button4: TButton;
DBGrid2: TDBGrid;
Button5: TButton;
TabSheet4: TTabSheet;
DBGrid3: TDBGrid;
Panel4: TPanel;
Button6: TButton;
ComboBox1: TComboBox;
Label5: TLabel;
Label6: TLabel;
Memo1: TMemo;
TabSheet5: TTabSheet;
Panel5: TPanel;
DBGrid4: TDBGrid;
ListBox1: TListBox;
ComboBox2: TComboBox;
Button7: TButton;
Panel6: TPanel;
Label4: TLabel;
Button8: TButton;
Label7: TLabel;
Cena: TLabel;
Button9: TButton;
ComboBox3: TComboBox;
Label8: TLabel;
DateTimePicker1: TDateTimePicker;
Label9: TLabel;
TabSheet6: TTabSheet;
PageControl2: TPageControl;
TabSheet8: TTabSheet;
TabSheet9: TTabSheet;
Edit3: TEdit;
Panel7: TPanel;
DBGrid6: TDBGrid;
ComboBox4: TComboBox;
DateTimePicker2: TDateTimePicker;
CheckBox1: TCheckBox;
Label10: TLabel;
SpeedButton1: TSpeedButton;
Label11: TLabel;
CheckBox2: TCheckBox;
Button11: TButton;
Button12: TButton;
Memo3: TMemo;
Panel8: TPanel;
DBGrid7: TDBGrid;
CheckBox3: TCheckBox;
CheckBox4: TCheckBox;
Label12: TLabel;
Button10: TButton;
Button13: TButton;
ComboBox5: TComboBox;
Label13: TLabel;
SpeedButton2: TSpeedButton;
DateTimePicker3: TDateTimePicker;
CheckBox5: TCheckBox;
CheckBox6: TCheckBox;
Button14: TButton;
procedure Button1Click(Sender: TObject);
procedure Edit2KeyPress(Sender: TObject; var Key: Char);
procedure Button2Click(Sender: TObject);
procedure Button3Click(Sender: TObject);
procedure Button4Click(Sender: TObject);
procedure Button5Click(Sender: TObject);
procedure PageControl1Change(Sender: TObject);
procedure Button6Click(Sender: TObject);
procedure Button8Click(Sender: TObject);
procedure Button7Click(Sender: TObject);
procedure Button9Click(Sender: TObject);
procedure SpeedButton1Click(Sender: TObject);
procedure Button11Click(Sender: TObject);
procedure Button12Click(Sender: TObject);
procedure FormActivate(Sender: TObject);
procedure DBGrid6CellClick(Column: TColumn);
procedure DBGrid3DrawColumnCell(Sender: TObject; const Rect: TRect;
DataCol: Integer; Column: TColumn; State: TGridDrawState);
procedure Button10Click(Sender: TObject);
procedure Button13Click(Sender: TObject);
procedure SpeedButton2Click(Sender: TObject);
procedure Edit3KeyPress(Sender: TObject; var Key: Char);
procedure Button14Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Main: TMain;
implementation
uses Unit5, Unit2, Unit3, Unit4, Unit6, Unit7;
{$R *.dfm}
procedure TMain.Button1Click(Sender: TObject);
begin
//очищаем поля ввода на форме добавления сотрудника
ADD_Sotr.Edit2.Text:='';
ADD_Sotr.Edit4.Text:='';
ADD_Sotr.Edit5.Text:='';
//выводим форму добавления сотрудника
ADD_Sotr.showmodal;
end;
procedure TMain.Edit2KeyPress(Sender: TObject; var Key: Char);
begin
//ограничение ввода (только цифры)
if not (key in['0','1','2','3','4','5','6','7','8',char(8),'9',',']) then key:=#0;
end;
procedure TMain.Button2Click(Sender: TObject);
begin
if edit1.Text='' then
begin
ShowMessage('Введите наименование услуги!');
exit;
end;
if edit2.Text='' then
begin
ShowMessage('Введите стоимость услуги!');
exit;
end;
//добавление новой услуги
DM.Adoquery4.Append;
DM.ADOQuery4Name_Usl.value:=edit1.text;
DM.ADOQuery4Cena.Value:=strtoint(edit2.text);
DM.Adoquery4.Post;
end;
procedure TMain.Button3Click(Sender: TObject);
begin
if messagedlg('Вы действительно хотите удалить услугу '+#10#13+
DM.adoquery4Name_Usl.value+'?'
,Mtconfirmation, [mbYes, mbNo],0)=mrYes
then begin
dm.ADOQuery4.Delete;
end;
end;
procedure TMain.Button4Click(Sender: TObject);
begin
//очищаем поля ввода на форме добавления клиента
ADD_Client.Edit2.Text:='';
ADD_Client.Edit4.Text:='';
ADD_Client.Edit5.Text:='';
ADD_Client.Caption:='Добавление клиента';
//выводим форму добавления клиента
ADD_Client.showmodal;
end;
procedure TMain.Button5Click(Sender: TObject);
begin
//выводим подтверждение
if messagedlg('Вы действительно хотите удалить клиента '+#10#13+
DM.adoquery1FIO.value+'?'
,Mtconfirmation, [mbYes, mbNo],0)=mrYes
then begin
//если нажали да - удаляем запись
dm.ADOQuery1.Delete;
end;
end;
procedure TMain.PageControl1Change(Sender: TObject);
begin
//при выборе вкладки "Оформить заявку"
if PageControl1.ActivePage=TabSheet4 then
begin
//заполняем выпадающий список клиентов
Combobox1.Items.Clear;
dm.adoquery1.First;
while not dm.adoquery1.Eof do
begin
Combobox1.Items.Add(dm.adoquery1FIO.Value);
dm.adoquery1.next;
end;
Combobox1.ItemIndex:=0;
end;
//при выборе вкладки "Оформить ремонт"
if PageControl1.ActivePage=TabSheet5 then
begin
//заполняем выпадающий список услуг
Combobox2.Items.Clear;
dm.adoquery4.First;
while not dm.adoquery4.Eof do
begin
Combobox2.Items.Add(dm.adoquery4Name_Usl.Value);
dm.adoquery4.next;
end;
Combobox2.ItemIndex:=0;
//заполняем выпадающий список сотрудников
Combobox3.Items.Clear;
dm.adoquery3.First;
while not dm.adoquery3.Eof do
begin
Combobox3.Items.Add(dm.adoquery3FIO.Value);
dm.adoquery3.next;
end;
Combobox3.ItemIndex:=0;
end;
DateTimePicker1.Date:=date;
if PageControl1.ActivePage=TabSheet6 then
begin
//заполняем выпадающий список сотрудников
Combobox4.Items.Clear;
dm.adoquery3.First;
while not dm.adoquery3.Eof do
begin
Combobox4.Items.Add(dm.adoquery3FIO.Value);
dm.adoquery3.next;
end;
Combobox4.ItemIndex:=0;
end;
//заполняем выпадающий список клиентов
Combobox5.Items.Clear;
dm.adoquery1.First;
while not dm.adoquery1.Eof do
begin
Combobox5.Items.Add(dm.adoquery1FIO.Value);
dm.adoquery1.next;
end;
Combobox5.ItemIndex:=0;
end;
procedure TMain.Button6Click(Sender: TObject);
begin
//если поле не заполнено - на выход
if memo1.Text='' then
begin
ShowMessage('Необходимо заполнить пожелания клиента!');
exit;
end;
//добавляем заявку
DM.ADOQuery5.Append;
DM.ADOQuery5ID_Client.Value:=DM.ADOQuery1.Lookup('FIO',combobox1.Text,'ID_Client');
DM.ADOQuery5Zakaz_Data.Value:=date;
DM.ADOQuery5Pojel.Value:=memo1.Text;
DM.ADOQuery5Status.Value:='Не рассмотрена';
DM.ADOQuery5.Post;
DM.ADOQuery6.Active:=false;
DM.ADOQuery6.Active:=true;
ShowMessage('Заявка добавлена под номером '
+inttostr(DM.ADOQuery5ID_Zakaz.value));
//оформляем квитанцию на печать
Rep_Zak.QRLabel2.Caption:='Квитанция №'+
inttostr(DM.ADOQuery5ID_Zakaz.value);
Rep_Zak.QRLabel3.Caption:='Клиент: '+(combobox1.text);
Rep_Zak.QRLabel4.caption:='Дата приема: '+DateToStr(Date);
Rep_Zak.QRMemo1.Lines.Text:=memo1.Text;
Rep_Zak.QRMemo3.Lines.Clear;
Rep_Zak.QRMemo3.Lines.Add('Паспорт: '+DM.ADOQuery1Pasport.value);
Rep_Zak.QRMemo3.Lines.Add('Телефон: '+DM.ADOQuery1Telefon.value);
DM.ADOQuery7.Active:=False;
DM.ADOQuery7.Active:=True;
DM.ADOQuery8.Active:=False;
DM.ADOQuery8.Active:=True;
Rep_Zak.QuickRep1.Preview;
end;
procedure TMain.Button8Click(Sender: TObject);
begin
//если список пуст - на выход
if ListBox1.Items.Count=0 then exit;
//если ничего не выбрали - на выход
if ListBox1.ItemIndex=-1 then
begin
ShowMessage('Выберете услугу для удаления!');
exit;
end;
//вычитаем цену
cena.Caption:=strtoint(cena.Caption)-
DM.adoquery4.Lookup('Name_Usl',ListBox1.Items[ListBox1.ItemIndex],'Cena');
//удаляем услугу из списка
ListBox1.Items.Delete(ListBox1.ItemIndex);
end;
procedure TMain.Button7Click(Sender: TObject);
begin
//добавляем в список новую услугу
ListBox1.Items.Add(combobox2.Text);
//прибавляем цену
cena.Caption:=strtoint(cena.Caption)+
DM.adoquery4.Lookup('Name_Usl',ComboBox2.text,'Cena');
end;
procedure TMain.Button9Click(Sender: TObject);
var
i:integer;
usl,s:string;
begin
if DM.ADOQuery6.RecordCount=0 then exit;
if listbox1.Items.Count=0 then
begin
ShowMessage('Добавьте оказываемые услуги!');
exit;
end;
DM.ADOQuery2.Append;
DM.ADOQuery2ID_Zakaz.Value:=DM.ADOQuery6ID_Zakaz.value;
DM.ADOQuery2ID_Sotr.Value:=
DM.ADOQuery3.Lookup('FIO',combobox3.Text,'ID_Sotr');
usl:='';//накапливаем выбранные услуги
for i:=0 to ListBox1.items.count-1
do usl:=usl+inttostr(DM.ADOQuery4.Lookup
('Name_Usl',ListBox1.items[i],'ID_Usluga'))+';';
DM.ADOQuery2Uslugi.Value:=usl;
DM.ADOQuery2Cena.Value:=strtofloat(cena.Caption);
DM.ADOQuery2Stroy_Data.Value:=DateTimePicker1.Date;
DM.ADOQuery2.Post;
DM.ADOQuery6.Edit;
DM.ADOQuery6Status.Value:='Работы выполнены!';
DM.ADOQuery6.Post;
DM.ADOQuery6.Active:=false;
DM.ADOQuery6.Active:=true;
DM.ADOQuery5.Active:=false;
DM.ADOQuery5.Active:=true;
ShowMessage('Заявка успешно оформлена!');
Rep_Rem.QRLabel2.Caption:='Квитанция №'+
inttostr(DM.ADOQuery2ID_Stroy.value);
Rep_Rem.QRLabel3.Caption:='Клиент: '+
DM.ADOQuery1.Lookup('ID_Client',
DM.ADOQuery5.Lookup('ID_Zakaz',DM.ADOQuery2ID_Zakaz.Value,'ID_Client'),'FIO');
Rep_Rem.QRLabel4.caption:='Дата приема: '+
datetostr(DM.ADOQuery5.Lookup('ID_Zakaz',DM.ADOQuery2ID_Zakaz.Value,'Zakaz_Data'))+
' Дата выдачи: '+datetostr(DateTimePicker1.date);
Rep_Rem.QRMemo1.Lines.Text:=
DM.ADOQuery5.Lookup('ID_Zakaz',DM.ADOQuery2ID_Zakaz.Value,'Pojel');
Rep_Rem.QRMemo3.Lines.Clear;
Rep_Rem.QRMemo4.Lines.Clear;
for i:=0 to ListBox1.Items.Count-1 do
begin
Rep_Rem.QRMemo3.Lines.Add(ListBox1.Items[i]);
Rep_Rem.QRMemo4.Lines.Add(floattostr
(DM.ADOQuery4.Lookup('Name_Usl',ListBox1.Items[i],'Cena')));
end;
Rep_Rem.QRLabel10.Caption:='На сумму '+(cena.Caption)+ ' руб.';
Rep_Rem.QRLabel11.Caption:='Работы производил: '+
ComboBox3.Text;
DM.ADOQuery7.Active:=False;
DM.ADOQuery7.Active:=True;
DM.ADOQuery8.Active:=False;
DM.ADOQuery8.Active:=True;
Rep_Rem.QuickRep1.Preview;
end;
procedure TMain.SpeedButton1Click(Sender: TObject);
begin
//меняем название кнопки
if SpeedButton1.Caption='=' then
begin
SpeedButton1.Caption:='>';
exit;
end;
if SpeedButton1.Caption='>' then
begin
SpeedButton1.Caption:='<';
exit;
end;
if SpeedButton1.Caption='<' then
begin
SpeedButton1.Caption:='=';
exit;
end;
end;
procedure TMain.Button11Click(Sender: TObject);
var
s,dt:string;//будем накапливать SQL запрос
begin
//формируем SQL запрос
s:='select * from remont where ID_Remont>0';
if checkbox1.Checked=true then
begin
s:=s+' AND ID_Sotr='+IntToStr(DM.ADOQuery3.Lookup
('FIO',combobox4.Text,'ID_Sotr'));
end;
if checkbox2.Checked=true then
begin
dt:=datetostr (DateTimePicker2.date);
s:=s+' AND Rem_Data'+SpeedButton1.Caption+
'#'+copy (dt,0,2)+'/'+copy (dt,4,2)+'/'+copy (dt,7,4)+'#';
end;
//активируем запрос
DM.ADOQuery7.Active:=false;
DM.ADOQuery7.SQL.Text:=s;
DM.ADOQuery7.Active:=true;
end;
procedure TMain.Button12Click(Sender: TObject);
begin
//запрос на выборку всех полей из таблицы remont
DM.ADOQuery7.Active:=false;
DM.ADOQuery7.SQL.Text:='select * from remont';
DM.ADOQuery7.Active:=true;
end;
procedure TMain.FormActivate(Sender: TObject);
begin
//активируем все таблицы
DM.ADOQuery1.Active:=true;
DM.ADOQuery2.Active:=true;
DM.ADOQuery3.Active:=true;
DM.ADOQuery4.Active:=true;
DM.ADOQuery5.Active:=true;
DM.ADOQuery6.Active:=true;
DM.ADOQuery7.Active:=true;
DM.ADOQuery8.Active:=true;
PageControl1Change(Sender);
end;
procedure TMain.DBGrid6CellClick(Column: TColumn);
var
i:integer;
s,usl:string;
begin
//при нажатии на ячейку в таблице "ремонт" - вкладка фильтры-ремонт
//выводим все оказанные услуги
s:=DM.ADOQuery7Uslugi.value;
usl:='';
memo3.Clear;
for i:=1 to length(s) do
begin
if s[i]=';' then
begin
memo3.Lines.Add
(DM.ADOQuery4.Lookup('ID_Usluga',strtoint(usl),'Name_Usl'));
usl:='';
end
else usl:=usl+s[i];
end;
end;
procedure TMain.DBGrid3DrawColumnCell(Sender: TObject; const Rect: TRect;
DataCol: Integer; Column: TColumn; State: TGridDrawState);
begin
//вывод разных цветов в таблице
//если заявка не рассмотрена
with DBGrid3.Canvas do
begin
if (DM.ADOQuery5Status.Value='Не рассмотрена') then //сравнение значение поля Фамилия
begin
FillRect(Rect); //удаляем стандартный вывод
Font.Color:=clRed; //красный цвет текста
TextOut(Rect.Left+2,Rect.Top+2,Column.Field.Text); //расположение текста по стандарту
end;
//если ремонт выполнен
if (DM.ADOQuery5Status.Value='Ремонт выполнен') then //сравнение значение поля Фамилия
begin
FillRect(Rect); //удаляем стандартный вывод
Font.Color:=clBlue; //синий цвет текста
TextOut(Rect.Left+2,Rect.Top+2,Column.Field.Text); //расположение текста по стандарту
end;
end;
end;
procedure TMain.Button10Click(Sender: TObject);
begin
DM.ADOQuery8.Active:=false;
DM.ADOQuery8.SQL.Text:='select * from zakaz';
DM.ADOQuery8.Active:=true;
end;
procedure TMain.Button13Click(Sender: TObject);
var
s,dt:string;//будем накапливать SQL запрос
begin
s:='select * from zakaz where ID_Zakaz>0';
//если отмечены "Выполненные" и "Не рассмотренные"
if checkbox3.Checked=true and checkbox4.Checked=true
then
else
begin
if checkbox3.Checked=true then
s:=s+' AND Status='+''''+'Ремонт выполнен'+'''';
if checkbox4.Checked=true then
s:=s+'AND Status='+''''+'Не рассмотрена'+'''';
end;
//если отмечена галочка "Клиент"
if checkbox6.Checked=true then
s:=s+' AND ID_Client='+IntToStr(DM.ADOQuery1.Lookup
('FIO',combobox5.Text,'ID_Client'));
//если отмечена галочка "Дата"
if checkbox5.Checked=true then
begin
dt:=datetostr (DateTimePicker3.date);
s:=s+' AND Zakaz_Data'+SpeedButton2.Caption+
'#'+copy (dt,0,2)+'/'+copy (dt,4,2)+'/'+copy (dt,7,4)+'#';
end;
//вставляем сформированный запрос и активируем
DM.ADOQuery8.Active:=false;
DM.ADOQuery8.SQL.Text:=s;
DM.ADOQuery8.Active:=true;
end;
procedure TMain.SpeedButton2Click(Sender: TObject);
begin
if SpeedButton2.Caption='=' then
begin
SpeedButton2.Caption:='>';
exit;
end;
if SpeedButton2.Caption='>' then
begin
SpeedButton2.Caption:='<';
exit;
end;
if SpeedButton2.Caption='<' then
begin
SpeedButton2.Caption:='=';
exit;
end;
end;
procedure TMain.Edit3KeyPress(Sender: TObject; var Key: Char);
begin
DM.Adoquery1.Locate('FIO',Edit3.text,[loCaseInsensitive,loPartialKey]);
end;
procedure TMain.Button14Click(Sender: TObject);
begin
Rep_Price.QuickRep1.Preview;
end;
end.
алгоритм код программа
2.3 ОРГАНИЗАЦИЯ ВХОДНЫХ И ВЫХОДНЫХ ДАННЫХ
Для работы с базой данных зачастую достаточно средств СУБД и не нужно использовать приложения, создание которых требует программирования.
Приложения разрабатывают главным образом в случаях, когда требуется обеспечить удобство работы с БД. В программе предложены следующие виды форм:
Рис. 1. Форма «Client»
Рис. 2. Форма «Sotr»
Рис. 3. Форма «stroy»
Рис. 4. Форма «Uslugi»
Рис. 5. Форма «Zakaz»
2.4 ТЕХНИЧЕСКИЕ СРЕДСТВА
Приложение представляет собой программу или комплекс программ, обеспечивающих учет работы строительной компании для прикладной задачи.
В данной программе рассматриваются приложения, использующие БД.
Приложения могут создаваться в среде или вне среды СУБД - с помощью системы программирования, использующей средства доступа к БД. Приложения, разработанные в среде СУБД, часто называют приложениями СУБД, а приложения, разработанные вне СУБД, - внешними приложениями.
Функциональные возможности включают:
- распечатка отчета необходимого прайс листа.
- быстрый поиск клиента по ФИО.
- добавление клиента
- удаление клиента
- добавление заявки
3. РУКОВОДСТВО ОПЕРАТОРА
3.1 НАЗНАЧЕНИЕ ПРОГРАММЫ
Для учета работы строительной компании, должна быть организована система оформление работ клиента и заказов, в том числе, который позволяет определить наиболее "доходные" заказы. В базе данных системы должна храниться полная информация услуг работам компании, где указывается дата оформление заявки и состояние заказа.
Система должна выполнять:
1. Обработку входной информации.
2. уменьшение трудоемкости обработки информации;
3. обеспечение пользовательского интерфейса.
3.2 УСЛОВИЯ ВЫПОЛНЕНИЯ ПРОГРАММЫ
Разработанная программа предназначена для хранения данных о программном обеспечении, которая располагает данные о клиентах сотрудников и услуг обрабатываемой заявки компании. Для ведения учета заявки услуг. Вся информация хранится в базе данных и охватывает все требуемые сведение.
Учитывающие следующие атрибуты услуги: номер, наименование, стоимость.
Информация о сотрудниках включает: номер, ФИО, адрес.
Клиенты включающие в себя следующие поля: номер, ФИО, паспорт, телефон.
Основными функциями разработанной программы по учету строительной компании является:
- поиск информации по ФИО, изменение, добавление удаление ;
- выбор информации из базы данных по запросам пользователя;
- результаты работы базы данных отражены в отчетных формах;
3.3 ВЫПОЛНЕНИЕ ПРОГРАММЫ
При открытии программы открывается окно "строительной компании".
При нажатии на кнопку откроется окно "сотрудники" Рис. 5.
Рис. 5. - Окно "Строительной компании".
Для добавления клиента в таблицу следует нажать кнопку "Добавить", откроется окно "Добавить" рис. 6.
Рис. 6. - Окно "Добавить нового сотрудника"
Приложения разрабатывают главным образом в случаях, когда требуется обеспечить удобство работы с БД. В программе предложены следующие виды форм:
Рис. 7. Форма «Услуги»
Рис. 8. -Форма «Клиенты»
В форме «Оформить заявку» хранится необходимая информация о клиенте и его заявке. В данной форме можно просмотреть информацию о оформление заявке, номер, клиент, дата состояние и пожелания.
Рис. 9. - Форма «Оформить заявку»
Форма «услуги» выполняет ввод и просмотр о строительной компании.
Рис. 10. - Форма «Прайс-лист»
ЗАКЛЮЧЕНИЕ
Программа «Учет строительной компании». Разрабатывалась для учета и точного внесение статистики вывода и внесение работ, подсчетов информации о клиентах и услуг строительной компании.
После завершение можно сделать вывод что, Delphi, обладает всеми чертами классической СУБД, предоставляет и дополнительные возможности. Access - это не только мощная, гибкая и простая в использовании СУБД, но и система для разработки работающих с базами данных приложений. С помощью Access мы можем создать приложение, работающее в среде Windows и полностью соответствующее нашим потребностям по управлению данными. Используя запросы, мы можем выбирать и обрабатывать хранящуюся в таблицах информацию. Можно создавать формы для ввода, просмотра и обновления данных, а также использовать Access для создания как простых, так и сложных отчетов. Формы и отчеты «наследуют» свойства базовой таблицы или запроса, так что в большинстве случаев мы указываем форматы, условия на значения и некоторые другие характеристики данных только один раз. К числу наиболее мощных средств Access относятся средства разработки объектов - мастера, которые можно использовать для создания таблиц, запросов различных типов форм и отчетов, просто выбрав с помощью мыши нужные опции. Чтобы полностью автоматизировать работу приложения, с помощью макросов Access мы легко свяжем данные с формами и отчетами.
СПИСОК ЛИТЕРАТУРЫ
Основные источники
1. Р.Д Аветисян, Д.Д Аветисян Теоретические основы информатики.- М: Наука, 2011.- 345 с;
2. В.З Аладьев, Основы информатики, 2011.-250 с;
3. Р Гласс, Р Нуазо, Сопровождение программного 2011.-237 с;
4. Грис Д. Наука программирования.: пер.с англ.М.Мир, 2011-357с;
5. Э Дейкстры, Дисциплина программирования. М. Мир, 2011-255 с;
Дополнительные источники
1. Информатика для юристов и экономистов, учебник для вузов, под ре. С. В. Симоновича, Москва, 2012.-198 с;
2. Информатика под ред. З.Е Макаровой, перераб. изд.-М, 2011-765 с;
3. Информатика, учебник под ред. профессора Н. В. Макаровой, Москва, «Финансы и статистика», 2012.-350 с;
4. Лабораторный практикум по информатике, В.А. Острейковского, Москва, Высшая школа, 2011-150 с;
5. В Липаев, Надежность программного обеспечения АСУ.- М.:Энергоиздат, 2011-400 с;
Размещено на Allbest.ru
Подобные документы
Разработка эскизного и технического проектов программы, ее назначение и область применения, описание алгоритма, организация входных и выходных данных. Выбор состава технических и программных средств, разработка рабочего проекта, спецификация программы.
курсовая работа [159,8 K], добавлен 26.01.2010Разработка эскизного и технического проектов программы, моделирующей игру "Кости". Постановка задачи, описание алгоритма; написание программы, организация входных и выходных данных; выбор программных средств; спецификация, текст, условия выполнения.
курсовая работа [93,8 K], добавлен 11.02.2012Назначение и область применения, технические характеристики, постановка задачи, описание алгоритма и организация входных и выходных данных для программы. Разработка, описание логической структуры, используемые технические средства и условия выполнения.
курсовая работа [969,3 K], добавлен 26.03.2009Разработка эскизного и технического проектов программы, ее назначение и область применения, технические характеристики. Организация входных и выходных данных, выбор состава технических и программных средств. Текст программы, ее описание и тестирование.
курсовая работа [1,3 M], добавлен 15.11.2009Разработка эскизного и технического проектов программы "Шифр Цезаря": назначение и область применения, описание алгоритма, организация входных и выходных данных. Выбор состава технических и программных средств, разработка, тест и внедрение программы.
курсовая работа [563,7 K], добавлен 15.07.2012Разработка эскизного и технического проектов программы, ее назначение и область применения, описание алгоритма, организация входных и выходных данных. Выбор состава технических и программных средств, разработка рабочего проекта, спецификация программы.
курсовая работа [700,6 K], добавлен 26.01.2010Разработка программы игры в крестики-нолики. Примеры игровой ситуации на игровом поле. Описание входных и выходных данных, переменных и функций программы. Реализация алгоритма работы программы на языке C++. Текст программы и примеры ее выполнения.
курсовая работа [352,8 K], добавлен 14.04.2011Анализ проектирования интерфейса программы. Выбор и назначение визуальных компонентов. Изучение экранных форм приложения. Модули, процедуры, функции проекта и их назначение. Листинг программного кода. Результаты работы автоматизированного продукта.
курсовая работа [1,9 M], добавлен 11.12.2017Характеристика программы на языке VBA, которая вводит исходные данные, выполняет расчеты и выводит результаты на экран. Описание переменных в программе, ее блок-схема и алгоритм работы. Листинг программы. Описание входных данных и результат вычислений.
курсовая работа [721,4 K], добавлен 10.11.2010Разработка программы обработки изображений, позволяющей прорисовывать типовые геометрические фигуры. Выбор аппаратных и технических средств для реализации программного продукта. Организация входных и выходных данных. Блок-схема и листинг программы.
курсовая работа [2,4 M], добавлен 18.06.2014