бесплатные рефераты

Автоматизация работы фирмы по продаже квартир

Для поиска достаточно выбрать пункт и начать вводить данные в ячейку(по мере того как их вводят(по мере схожести данных) будет появляться нужная информация). После того как нужный сотрудник найден достаточно нажать кнопку удалить и вся информация о сотруднике будет удалена.

Для возврата в предыдущую форму нужно нажать кнопку <Cancel>.

2.6 Форма 4(работа с заказом)

Это рабочая форма. Здесь идёт выполнение заказа клиента. Опишем работу данной формы.

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

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

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

Также удобен поиск по цене, ведь после поиска заказанной квартиры появится список квартир, а клиенту нужна квартира подешевле. Для поиска выбираем поиск:

от, это поиск от указанной цены и выше, при этом не нужная ячейка до исчезнет;

до, это поиск до указанной цены, ненужная ячейка от будет убрана;

от и до, это поиск квартир со стоимостью в пределе от и до;

после выбора поиска в ячейку заносим требуемые данные и нажимаем кнопку <поиск>.

После нахождения нужной квартиры среди предлагаемых продавцами, нажимаем кнопку <купить>, квартира и все данные о ней будут добавлены в список квартир фирмы расположенный ниже, при чём стоимость квартиры будет теперь на 5% больше(как указано в информации о фирме). Для простоты перехода здесь есть навигатор.

Для того чтобы продать квартиру достаточно выбрать квартиру из списка квартир фирмы и нажать кнопку <продать>, однако если вдруг не указан покупатель, то операция продажи не удастся, курсор перейдёт в ячейку покупатель и будет ждать выбора покупателя. После того как покупатель выбран выберите квартиру и снова нажмите кнопку <продать>. После нажатия эта форма закроется и появится форма 5(чек). Ещё одна главная особенность заключается в том что после нажатия на кнопку <продать>, то есть после выполнения заказа, вся информация о выбранном клиенте удаляется.

Если необходимо добавить квартиру в список предлагаемых продавцами достаточно нажать кнопку <добавит квартиру> ниже списка квартир предлагаемых продавцами(помимо квартиры там можно добавить и продавца).

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

Если требуется вернуться на главную форму нужно нажать кнопку <назад>.

2.6.1 Форма 5(чек)

На этой форме представлен чек об оплате. Поля чека заполняются автоматически после того как на предыдущей форме была заключена сделка продажа(нажатие кнопки <продать>). Значение поля расчётный счёт фирмы берётся из информации об фирме. Дата - сегодняшняя дата. Остальные три значения полей `стоимость_кв', 'адрес_кв' и 'адрес_продавца' берутся в соответствии с данными выбранными на предыдущей форме.

Если необходимо чек об оплате можно распечатать, для этого достаточно нажать кнопку <распечатать>.

Чтобы вернуться на предыдущую форму нужно нажать кнопку <ok>. Важной особенностью здесь также является то, что при нажатии на клавишу <ok> автоматически генерируется отчёт.

2.6.2 Форма 7(добавление квартир предлагаемых продавцами)

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

Так как база по квартирам находится в подчинении у базы по продавцам, то для того чтобы добавить квартиру, необходимо сначала выбрать нужного продавца. Для просмотра продавцов предусмотрен `навигатор', благодаря которому также можно добавлять нового продавца. Для быстрого поиска продавца предусмотрен специальный поиск. Поиск представлен ячейкой для ввода данных и выбором для поиска владельца по: <имени>, <расч_счёту>.

Для поиска достаточно выбрать пункт и начать вводить данные в ячейку(по мере того как их вводят(по мере схожести данных) будет появляться нужная информация).

После того как выбран нужный продавец можно:

передвигаться по записям с помощью навигатора;

редактировать записи по квартире(достаточно изменить записи в ячейках и нажать `V' в навигаторе для отмены изменений нажать `Х');

добавлять новую квартиру выбрав `+` в навигаторе;

удалять запись нажав `-';

Для того чтобы вернуться на предыдущую форму нажать кнопку <OK>.

2.7 Форма 6(отчёт)

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

С помощью него удобнее осуществить удаление ненужной записи в отчёте.

Главное в этом отчёте то, что он автоматизирован, то есть записи заносятся сюда автоматически по мере работы. Генерация идёт после того как в форме 5(чек) мы нажали <ок> , часть записей идёт из чека(то есть после осуществления сделки), часть ,в соответствии, из формы 4.

Для возврата в главное меню нужно нажать кнопку <назад>.

ЗАКЛЮЧЕНИЕ

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

С точки зрения практического применения программный продукт не является полноценным, хотя некоторые модули могут быть использованы для разработки пригодного к реальным условиям приложения. Целью проекта является демонстрация возможностей автоматизации в сфере бытового обслуживания, а также демонстрация удобства и простоты работы. Благодаря программе отпадает необходимость ведения многих документов, вдобавок исключаются ошибки человека(так называемый человеческий фактор).

Очень удобно в программе автоматическое заполнение чеков и отчётов ведь это как правило довольно неинтересный и скучный процесс, одно дело когда надо заполнить несколько документов, другое когда сотни и даже тысячи и вот здесь велика человеческая ошибка.

Много внимания возможностям языка SQL, предоставляющего средства для обработки данных. Запросы дают разнообразные возможности поиска необходимых данных. находить разного рода информацию по клиентам, сотрудникам. Также SQL запросы помогают отсеивать данные по необходимым параметрам, отсеивать можно до тех пор пока не останется нужная нам информация. Данное приложение может быть адаптировано к любой службе занимающихся работой с квартирами или недвижимостью, учитывая схожесть организации основных функций и решаемых задач. Ко всему прочему программу легко расширить например до работы риэлторской фирмы, которая предоставляет различные услуги в виде: оценки квартир, обмен квартир и имеющей другие функции.

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

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

СПИСОК ИСПОЛЬЗУЕМОЙ ЛИТЕРАТУРЫ

Архангельский А.Я. Программирование В Delphi 5 - М.:

ЗАО «Издательство Бином», 2000 г. - 1072 с.: ил.

Базы данных. Проектирование, реализация и сопровождение. Теория и практика. Второе издание исправленное и дополненное. Авторы Томас Конноли и Каролин Бегг.

Встроенное справочное руководство Borland Delphi 5.

Интернет-сайт www.citforum.ru ftp-архив.

Документы конференции по Delphi.

Приложение А

Project2

program Project2;

uses

Forms,

Unit1 in 'Unit1.pas' {Form1},

Unit2 in 'Unit2.pas' {Form2},

Unit3 in 'Unit3.pas' {Form3},

Unit4 in 'Unit4.pas' {Form4},

Unit5 in 'Unit5.pas' {Form5},

Unit6 in 'Unit6.pas' {Form6},

Unit7 in 'Unit7.pas' {Form7};

{$R *.RES}

begin

Application.Initialize;

Application.CreateForm(TForm1, Form1);

Application.CreateForm(TForm2, Form2);

Application.CreateForm(TForm3, Form3);

Application.CreateForm(TForm4, Form4);

Application.CreateForm(TForm5, Form5);

Application.CreateForm(TForm6, Form6);

Application.CreateForm(TForm7, Form7);

Application.Run;

end.

Unit1

unit Unit1;

interface

uses

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

Menus, Db, Grids, DBGrids, DBTables, ColorGrd, ExtCtrls, StdCtrls, jpeg,

Buttons;

type

TForm1 = class(TForm)

MainMenu1: TMainMenu;

N1: TMenuItem;

N2: TMenuItem;

N3: TMenuItem;

N4: TMenuItem;

N5: TMenuItem;

DataSource1: TDataSource;

Table1: TTable;

Table1FirstName: TStringField;

Table1SecondName: TStringField;

Table1Otchestvo: TStringField;

Table1Npassporta: TFloatField;

Table1Adress: TStringField;

Table1Phone: TFloatField;

Table1Obrazov: TStringField;

Table1OpWork: TFloatField;

Table1DataBorn: TDateField;

Table1Family: TStringField;

Table1Dolgnost: TStringField;

Table1Oklad: TFloatField;

Table1DataPostWork: TDateField;

N6: TMenuItem;

ColorGrid1: TColorGrid;

DataSource4: TDataSource;

Table4: TTable;

DBGrid4: TDBGrid;

Table4Name: TStringField;

Table4Surname: TStringField;

Table4Adress: TStringField;

Table4Telefhone: TFloatField;

Table4RayonKv: TStringField;

Table4Tipplan: TStringField;

DataSource2: TDataSource;

Table2: TTable;

DataSource3: TDataSource;

Table3: TTable;

Table3Vlad: TStringField;

Table3Rschet: TFloatField;

Table3Adress: TStringField;

Table3Telephone: TFloatField;

Table2Inomer: TFloatField;

Table2Oper: TStringField;

Table2Tipplan: TStringField;

Table2Rayon: TStringField;

Table2Adress: TStringField;

Table2Obpl: TFloatField;

Table2Plkux: TFloatField;

Table2Sostkv: TStringField;

Table2Kolroom: TFloatField;

Table2Sityname: TStringField;

Table2Zena: TFloatField;

Table2Dopsv: TStringField;

Table2Vlad: TStringField;

N7: TMenuItem;

Image1: TImage;

Label1: TLabel;

Label2: TLabel;

N8: TMenuItem;

Button1: TButton;

Button2: TButton;

BitBtn1: TBitBtn;

Label3: TLabel;

Label4: TLabel;

procedure N3Click(Sender: TObject);

procedure N4Click(Sender: TObject);

procedure N5Click(Sender: TObject);

procedure Button1Click(Sender: TObject);

procedure Button2Click(Sender: TObject);

procedure ColorGrid1Change(Sender: TObject);

procedure N6Click(Sender: TObject);

procedure Button3Click(Sender: TObject);

procedure N7Click(Sender: TObject);

procedure Image1Click(Sender: TObject);

procedure N8Click(Sender: TObject);

procedure BitBtn1Click(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

var

Form1: TForm1;

pole:shortstring;

implementation

uses Unit2, Unit4, Unit3, Unit5, Unit6, Unit7;

{$R *.DFM}

procedure TForm1.N3Click(Sender: TObject);

begin

close;

end;

procedure TForm1.N4Click(Sender: TObject);

begin

Form1.table1.flushbuffers;

Form1.table2.flushbuffers;

Form1.Hide;

Form2.Show;

end;

procedure TForm1.N5Click(Sender: TObject);

begin

Form1.table2.flushbuffers;

Form1.hide;

Form4.show;

end;

procedure TForm1.Button1Click(Sender: TObject);

begin

with table4 do begin

first;

insert;

end;

end;

procedure TForm1.Button2Click(Sender: TObject);

begin

table4.Edit;

if messagedlg('Удалить', mtconfirmation, [mbyes, mbno],0)=mryes

then table4.delete;

end;

procedure TForm1.ColorGrid1Change(Sender: TObject);

begin

form1.Color:=ColorGrid1.ForeGroundColor;

form2.Color:=ColorGrid1.ForeGroundColor;

form3.Color:=ColorGrid1.ForeGroundColor;

form4.Color:=ColorGrid1.ForeGroundColor;

form5.Color:=ColorGrid1.ForeGroundColor;

form6.Color:=ColorGrid1.ForeGroundColor;

form7.Color:=ColorGrid1.ForeGroundColor;

colorgrid1.visible:=false;

end;

procedure TForm1.N6Click(Sender: TObject);

begin

colorgrid1.visible:=true;

end;

procedure TForm1.Button3Click(Sender: TObject);

begin

table4.flushbuffers;

end;

procedure TForm1.N7Click(Sender: TObject);

begin

image1.visible:=true;

label1.visible:=true;

label2.visible:=true;

label4.visible:=true;

label3.visible:=false;

dbgrid4.Visible:=false;

BitBtn1.visible:=false;

button1.visible:=false;

button2.visible:=false;

end;

procedure TForm1.Image1Click(Sender: TObject);

begin

image1.visible:=false;

label1.visible:=false;

label2.visible:=false;

label4.visible:=false;

label3.visible:=true;

dbgrid4.Visible:=true;

BitBtn1.visible:=true;

button1.visible:=true;

button2.visible:= true;

end;

procedure TForm1.N8Click(Sender: TObject);

begin

form1.hide;

form6.show;

end;

procedure TForm1.BitBtn1Click(Sender: TObject);

begin

table4.flushbuffers;

end;

end.

Unit2

unit Unit2;

interface

uses

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

StdCtrls, Mask, DBCtrls, ExtCtrls;

type

TForm2 = class(TForm)

DBEdit1: TDBEdit;

Label2: TLabel;

DBEdit2: TDBEdit;

Label3: TLabel;

DBEdit3: TDBEdit;

Label4: TLabel;

DBEdit4: TDBEdit;

Label5: TLabel;

DBEdit5: TDBEdit;

Label6: TLabel;

DBEdit6: TDBEdit;

Label7: TLabel;

DBEdit7: TDBEdit;

Label8: TLabel;

DBEdit8: TDBEdit;

Label9: TLabel;

DBEdit9: TDBEdit;

Label10: TLabel;

DBEdit10: TDBEdit;

Label11: TLabel;

DBEdit11: TDBEdit;

Label12: TLabel;

DBEdit12: TDBEdit;

Label13: TLabel;

DBEdit13: TDBEdit;

Label1: TLabel;

DBNavigator1: TDBNavigator;

Label14: TLabel;

Label15: TLabel;

Button1: TButton;

Button2: TButton;

Edit1: TEdit;

Label16: TLabel;

RadioGroup1: TRadioGroup;

procedure Button1Click(Sender: TObject);

procedure Button2Click(Sender: TObject);

procedure Edit1Change(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

var

Form2: TForm2;

implementation

uses Unit1, Unit3;

{$R *.DFM}

procedure TForm2.Button1Click(Sender: TObject);

begin

form2.hide;

form3.show;

Form1.Table1.Last;

Form1.Table1.Insert;

try

except

form3.dbedit1.setfocus;

end;

end;

procedure TForm2.Button2Click(Sender: TObject);

begin

form2.Hide;

form1.show;

end;

procedure TForm2.Edit1Change(Sender: TObject);

begin

if Edit1.Text<>'' then

begin

case RadioGroup1.ItemIndex of

0: begin

form1.Table1.Locate('secondname',Edit1.Text,[]);

end;

1: begin

form1.table1.locate('dolgnost',edit1.text,[]);

end;

end;

end;

end;

end.

Unit3

unit Unit3;

interface

uses

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

StdCtrls, Mask, DBCtrls, ExtCtrls, Buttons;

type

TForm3 = class(TForm)

DBEdit1: TDBEdit;

Label2: TLabel;

DBEdit2: TDBEdit;

Label3: TLabel;

DBEdit3: TDBEdit;

Label4: TLabel;

DBEdit4: TDBEdit;

Label5: TLabel;

DBEdit5: TDBEdit;

Label6: TLabel;

DBEdit6: TDBEdit;

Label7: TLabel;

DBEdit7: TDBEdit;

Label8: TLabel;

DBEdit8: TDBEdit;

Label9: TLabel;

DBEdit9: TDBEdit;

Label10: TLabel;

DBEdit10: TDBEdit;

Label11: TLabel;

DBEdit11: TDBEdit;

Label12: TLabel;

DBEdit12: TDBEdit;

Label13: TLabel;

DBEdit13: TDBEdit;

Label1: TLabel;

Button2: TButton;

Label15: TLabel;

RadioGroup1: TRadioGroup;

Edit1: TEdit;

Label14: TLabel;

Button1: TButton;

BitBtn1: TBitBtn;

BitBtn2: TBitBtn;

procedure Button1Click(Sender: TObject);

procedure Button2Click(Sender: TObject);

procedure Button3Click(Sender: TObject);

procedure Edit1Change(Sender: TObject);

procedure BitBtn1Click(Sender: TObject);

procedure BitBtn2Click(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

var

Form3: TForm3;

implementation

uses Unit1, Unit2;

{$R *.DFM}

procedure TForm3.Button1Click(Sender: TObject);

begin

form1.table1.Edit;

if messagedlg('Удалить', mtconfirmation, [mbyes, mbno],0)=mryes

then form1.table1.delete;

end;

procedure TForm3.Button2Click(Sender: TObject);

begin

Form1.Table1.Last;

Form1.Table1.Insert;

end;

procedure TForm3.Button3Click(Sender: TObject);

begin

form3.hide;

form2.show;

end;

procedure TForm3.Edit1Change(Sender: TObject);

begin

if Edit1.Text<>'' then

begin

case RadioGroup1.ItemIndex of

0: begin

form1.Table1.Locate('secondname',Edit1.Text,[]);

end;

1: begin

form1.table1.locate('dolgnost',edit1.text,[]);

end;

2: begin

form1.table1.locate('npassporta',edit1.text,[]);

end;

end;

end;

end;

procedure TForm3.BitBtn1Click(Sender: TObject);

begin

form1.Table1.FlushBuffers;

end;

procedure TForm3.BitBtn2Click(Sender: TObject);

begin

form3.Hide;

form2.show;

end;

end.

Unit4

unit Unit4;

interface

uses

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

StdCtrls, Mask, DBCtrls, ExtCtrls, DBCGrids, Db, DBTables, TeEngine,

Series, TeeProcs, Chart, DBChart, mxstore, mxDB, Grids, mxgrid, mxtables,

mxgraph, DBGrids, Spin, DBLookup, ColorGrd, ComCtrls, Tabnotbk;

type

TForm4 = class(TForm)

GroupBox1: TGroupBox;

DataSource1: TDataSource;

rayon: TCheckBox;

tipplan: TCheckBox;

DBGrid1: TDBGrid;

Button5: TButton;

Button2: TButton;

RadioGroup1: TRadioGroup;

Label1: TLabel;

DBLookupCombo1: TDBLookupCombo;

Query1: TQuery;

DataSource2: TDataSource;

Query2: TQuery;

ComboBox1: TComboBox;

ComboBox2: TComboBox;

Button3: TButton;

Label2: TLabel;

DBLookupCombo2: TDBLookupCombo;

Label3: TLabel;

Button1: TButton;

GroupBox2: TGroupBox;

Edit1: TEdit;

Edit2: TEdit;

Label4: TLabel;

Label5: TLabel;

RadioButton1: TRadioButton;

RadioButton2: TRadioButton;

RadioButton3: TRadioButton;

Button4: TButton;

DataSource3: TDataSource;

Query3: TQuery;

Query3BDEDesigner: TStringField;

Query3BDEDesigner2: TStringField;

Query3_: TFloatField;

Query3BDEDesigner3: TStringField;

Query3_2: TStringField;

Query3BDEDesigner4: TStringField;

Query3BDEDesigner5: TStringField;

Query3_3: TFloatField;

Query3_4: TFloatField;

Query3_5: TStringField;

Query3_6: TFloatField;

Query3BDEDesigner6: TStringField;

Query3BDEDesigner7: TFloatField;

Query3_7: TStringField;

Query3_1: TStringField;

DataSource4: TDataSource;

Query4: TQuery;

DataSource5: TDataSource;

Query5: TQuery;

DBGrid2: TDBGrid;

Label6: TLabel;

DataSource6: TDataSource;

Table1: TTable;

DBNavigator1: TDBNavigator;

Button6: TButton;

Query1BDEDesigner: TStringField;

Query1BDEDesigner2: TStringField;

Query1_: TFloatField;

Query1BDEDesigner3: TStringField;

Query1_2: TStringField;

Query1BDEDesigner4: TStringField;

Query1BDEDesigner5: TStringField;

Query1_3: TFloatField;

Query1_4: TFloatField;

Query1_5: TStringField;

Query1_6: TFloatField;

Query1BDEDesigner6: TStringField;

Query1BDEDesigner7: TFloatField;

Query1_7: TStringField;

Table1Inomer: TFloatField;

Table1Oper: TStringField;

Table1Tipplan: TStringField;

Table1Rayon: TStringField;

Table1Adress: TStringField;

Table1Obpl: TFloatField;

Table1Plkux: TFloatField;

Table1Sostkv: TStringField;

Table1Kolroom: TFloatField;

Table1Sityname: TStringField;

Table1Adress_prod: TStringField;

Table1Dopsv: TStringField;

Table1Vlad: TStringField;

Table1Zena: TFloatField;

procedure Button1Click(Sender: TObject);

procedure Button5Click(Sender: TObject);

procedure Button2Click(Sender: TObject);

procedure DBLookupCombo1Change(Sender: TObject);

procedure Button3Click(Sender: TObject);

procedure DBLookupCombo2Change(Sender: TObject);

procedure Button4Click(Sender: TObject);

procedure RadioButton1Click(Sender: TObject);

procedure RadioButton2Click(Sender: TObject);

procedure RadioButton3Click(Sender: TObject);

procedure Button6Click(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

var

Form4: TForm4;

implementation

uses Unit1, Unit5, Unit6, Unit7;

{$R *.DFM}

procedure TForm4.Button1Click(Sender: TObject);

begin

form4.hide;

form7.show;

end;

procedure TForm4.Button5Click(Sender: TObject);

begin

form4.hide;

form1.show;

end;

procedure TForm4.Button2Click(Sender: TObject);

begin

dbgrid1.DataSource:=DataSource1;

with Query1 do

begin

close;

with radioGroup1 do begin

case ItemIndex of

0:ParamByName('op').AsString:='продажа';

1:ParamByName('op').AsString:='обмен';

2:ParamByName('op').AsString:='%';

end;

end;{with}

if rayon.Checked then begin

if Combobox1.Text<>''then

ParamByName('ra').AsString:=Combobox1.Text

end

else ParamByName('ra').AsString:='%';

if tipPlan.Checked then begin

if Combobox2.Text<>''then

paramByName('tp').AsString:=Combobox2.Text

end

else ParamByName('tp').AsString:='%';

Open;

end;

end;

procedure TForm4.DBLookupCombo1Change(Sender: TObject);

begin

dbgrid1.DataSource:=DataSource2;

with query2 do begin

close;

parambyname('vl').asString:=DBLookupCombo1.text;

open;

end;

end;

procedure TForm4.Button3Click(Sender: TObject);

begin

if DBLookupCombo2.value<>'' then

begin

form4.hide;

form5.show;

form5.table1.edit;

form5.table1.fieldbyname('ras_schet').value:=form1.label2.caption;

form5.table1.fieldbyname('date_pol').value:=form5.DateTimePicker1.date;

form5.table1.fieldbyname('adress_kv').value:=form4.table1.Fieldbyname('adress').value;

form5.table1.fieldbyname('adress_prod').value:=form4.table1.Fieldbyname('adress_prod').value;

form5.table1.fieldbyname('stoimost_kv').value:=form4.table1.Fieldbyname('zena').value;

end

else dblookupcombo2.setfocus;

end;

procedure TForm4.DBLookupCombo2Change(Sender: TObject);

begin

with form1.table4 do begin

form1.table4.locate('name',string(form4.DBLookupCombo2),[]);

form4.Combobox1.text:=form1.table4.fieldbyname('rayonkv').asstring;

form4.Combobox2.text:=form1.table4.fieldbyname('tipplan').asstring;

end;

end;

procedure TForm4.Button4Click(Sender: TObject);

begin

dbgrid1.DataSource:=DataSource3;

if RadioButton1.checked then

begin

with query3 do

begin

close;

parambyname('par1').asinteger:=strtoint(edit1.text);

open;

end

end

else

if RadioButton2.checked then begin

dbgrid1.DataSource:=DataSource4;

with query4 do begin

close;

parambyname('par1').asinteger:=strtoint(edit2.text);

open;

end

end

else

if RadioButton3.checked then begin

dbgrid1.DataSource:=DataSource5;

with query5 do begin

close;

parambyname('par1').asinteger:=strtoint(edit1.text);

parambyname('par2').asinteger:=strtoint(edit2.text);

open;

end;

end;

end;

procedure TForm4.RadioButton1Click(Sender: TObject);

begin

edit1.visible:=true;

label4.visible:=true;

edit2.visible:=false;

label5.visible:=false;

end;

procedure TForm4.RadioButton2Click(Sender: TObject);

begin

edit1.visible:=false;

label4.visible:=false;

edit2.visible:=true;

label5.visible:=true;

end;

procedure TForm4.RadioButton3Click(Sender: TObject);

begin

edit1.visible:=true;;

label4.visible:=true;

edit2.visible:=true;

label5.visible:=true;

end;

procedure TForm4.Button6Click(Sender: TObject);

begin

form4.table1.Edit;

if messagedlg('Вы уверены', mtconfirmation, [mbyes, mbno],0)=mryes

then begin

with form4.table1 do begin

first;

insert;

form4.table1.fieldbyname('inomer').value:=form4.query1.fieldbyname('инд_номер').value;

form4.table1.fieldbyname('oper').value:=form4.query1.fieldbyname('операция').value;

form4.table1.fieldbyname('tipplan').value:=form4.query1.fieldbyname('тип_планировки').value;

form4.table1.fieldbyname('rayon').value:=form4.query1.fieldbyname('район').value;

form4.table1.fieldbyname('adress').value:=form4.query1.fieldbyname('адресс').value;

form4.table1.fieldbyname('obpl').value:=form4.query1.fieldbyname('общ_площадь').value;

form4.table1.fieldbyname('plkux').value:=form4.query1.fieldbyname('пл_кухни').value;

form4.table1.fieldbyname('sostkv').value:=form4.query1.fieldbyname('сост_кв').value;

form4.table1.fieldbyname('kolroom').value:=form4.query1.fieldbyname('кол-во_комнат').value;

form4.table1.fieldbyname('sityname').value:=form4.query1.fieldbyname('город').value;

form4.table1.fieldbyname('dopsv').value:=form4.query1.fieldbyname('дополн_свед').value;

form4.table1.fieldbyname('vlad').value:=form4.query1.fieldbyname('владелец').value;

form4.table1.fieldbyname('adress_prod').value:=form4.query1.fieldbyname('адресс продавца').value;

form4.table1.fieldbyname('zena').value:=form4.query1.fieldbyname('цена').value*1.05;

end;

end;

end;

end.

Unit5

unit Unit5;

interface

uses

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

StdCtrls, Db, Grids, DBGrids, DBTables, ComCtrls, Buttons;

type

TForm5 = class(TForm)

DataSource1: TDataSource;

DBGrid1: TDBGrid;

Table1: TTable;

DateTimePicker1: TDateTimePicker;

BitBtn1: TBitBtn;

Table1Ras_schet: TFloatField;

Table1Date_pol: TDateField;

Table1Stoimost_kv: TFloatField;

Table1Adress_kv: TStringField;

Table1Adress_prod: TStringField;

Label1: TLabel;

Button1: TButton;

procedure Button1Click(Sender: TObject);

procedure BitBtn1Click(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

var

Form5: TForm5;

implementation

uses Unit4, Unit6, Unit1;

{$R *.DFM}

procedure TForm5.Button1Click(Sender: TObject);

begin

if messagedlg('Вы уверены', mtconfirmation, [mbyes, mbno],0)=mryes

then form5.print;

end;

procedure TForm5.BitBtn1Click(Sender: TObject);

begin

form5.hide;

form4.show;

form5.table1.flushbuffers;

with form6.table1 do begin

last;

insert;

form6.table1.edit;

form6.table1.fieldbyname('name_pokyp').value:=form4.DBLookupCombo2.value;

form6.table1.fieldbyname('date').value:=form5.DateTimePicker1.date;

form6.table1.fieldbyname('stoimost_kv').value:=form5.table1.fieldbyname('stoimost_kv').value;

form6.table1.fieldbyname('inomer_kv').value:=form4.table1.fieldbyname('inomer').value;

form6.table1.fieldbyname('name_prod').value:=form4.table1.fieldbyname('vlad').value;

end;

form6.table1.flushbuffers;

form1.table4.locate('name',form4.DBLookupCombo2.value,[]);

form1.table4.delete;

form4.table1.delete;

end;

end.

Unit6

unit Unit6;

interface

uses

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

Db, Grids, DBGrids, DBTables, StdCtrls, ExtCtrls, DBCtrls;

type

TForm6 = class(TForm)

DataSource1: TDataSource;

Table1: TTable;

DBGrid1: TDBGrid;

Button1: TButton;

DBNavigator1: TDBNavigator;

Table1Name_pokyp: TStringField;

Table1Date: TDateField;

Table1Stoimost_kv: TFloatField;

Table1Inomer_kv: TFloatField;

Table1Name_prod: TStringField;

procedure Button1Click(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

var

Form6: TForm6;

implementation

uses Unit1;

{$R *.DFM}

procedure TForm6.Button1Click(Sender: TObject);

begin

form6.hide;

form1.show;

end;

end.

Unit7

unit Unit7;

interface

uses

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

StdCtrls, Buttons, DBLookup, ExtCtrls, DBCtrls, Mask;

type

TForm7 = class(TForm)

BitBtn1: TBitBtn;

GroupBox1: TGroupBox;

DBEdit1: TDBEdit;

Label2: TLabel;

DBEdit2: TDBEdit;

Label3: TLabel;

DBEdit3: TDBEdit;

Label4: TLabel;

DBEdit4: TDBEdit;

DBNavigator1: TDBNavigator;

GroupBox2: TGroupBox;

Label1: TLabel;

DBEdit5: TDBEdit;

Label5: TLabel;

DBEdit6: TDBEdit;

Label6: TLabel;

DBEdit7: TDBEdit;

Label7: TLabel;

DBEdit8: TDBEdit;

Label8: TLabel;

DBEdit9: TDBEdit;

Label9: TLabel;

DBEdit10: TDBEdit;

Label10: TLabel;

DBEdit11: TDBEdit;

Label11: TLabel;

DBEdit12: TDBEdit;

Label12: TLabel;

DBEdit13: TDBEdit;

Label13: TLabel;

DBEdit14: TDBEdit;

Label14: TLabel;

DBEdit15: TDBEdit;

Label15: TLabel;

DBEdit16: TDBEdit;

Label16: TLabel;

DBEdit17: TDBEdit;

DBNavigator2: TDBNavigator;

RadioGroup1: TRadioGroup;

Edit1: TEdit;

procedure BitBtn1Click(Sender: TObject);

procedure Button1Click(Sender: TObject);

procedure Edit1Change(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

var

Form7: TForm7;

implementation

uses Unit1, Unit4;

{$R *.DFM}

procedure TForm7.BitBtn1Click(Sender: TObject);

begin

form7.hide;

form4.show;

end;

procedure TForm7.Button1Click(Sender: TObject);

begin

form1.table3.flushbuffers;

form1.table2.flushbuffers;

end;

procedure TForm7.Edit1Change(Sender: TObject);

begin

if Edit1.Text<>'' then

begin

case RadioGroup1.ItemIndex of

0: begin

form1.Table3.Locate('vlad',Edit1.Text,[]);

end;

1: begin

form1.table3.locate('rschet',edit1.text,[]);

end;

end;

end;

end;

end.

Приложение Б

Страницы: 1, 2


© 2010 РЕФЕРАТЫ