Автоматизация учета аренды и оплаты по ним

Автор работы: Пользователь скрыл имя, 09 Января 2013 в 09:04, курсовая работа

Описание

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

Содержание

СОДЕРЖАНИЕ
ПЕРЕЧЕНЬ СОКРАЩЕНИЙ 3
1. ПОСТАНОВКА ЗАДАЧИ 5
2.АНАЛИТИЧЕСКИЙ ОБЗОР СУЩЕСТВУЮЩИХ СИСТЕМ 6
2.1. Программный комплекс «арендная плата» 6
2.2. Конфигурация «элиас: аренда недвижимости» 8
3.ОРГАНИЗАЦИОННО-ФУНКЦИОНАЛЬНАЯ СТРУКТУРА СИСТЕМЫ 11
4. ИНФОЛОГИЧЕСКАЯ МОДЕЛЬ ПРЕДМЕТНОЙ ОБЛАСТИ 12
5. ВИДЫ ОБЕСПЕЧЕНИЯ СИСТЕМЫ 13
5.1 Информационное обеспечение 13
5.2 Математическое обеспечение 16
5.3 Алгоритмическое обеспечение 17
5.4 Лингвистическое обеспечение 18
5.5 Программное обеспечение 18
6. ОПИСАНИЕ ИНТЕРФЕЙСА 20
7. ХАРАКТЕРИСТИКИ СИСТЕМЫ 29
ЗАКЛЮЧЕНИЕ 30
СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ 31
ПРИЛОЖЕНИЕ 1 32

Работа состоит из  1 файл

отчет_курсовик_учет_аренды.doc

— 701.50 Кб (Скачать документ)

  i, j:integer;

implementation

 

uses unit1, unit2, unit3, Unit8,unit12, Unit4;

 

procedure TForm7.FormCreate(Sender: TObject);

begin

  sumdog:=form7.DBEdit5.Text;

  sumoplat:=form7.DBEdit6.Text;

  Form7.DBNavigator2.BtnClick(nbLast);

  flag:=false;

  Form7.DateTimePicker1.Date:=now;

  DateTimePicker1.MinDate:=now;

  Edit5.Text:=DateToStr(DateTimePicker1.date);

  Form7.ADOTable1.Refresh;

 

{-Формирование даты, до которой необходимо будет произвести первую оплату -}

  s:=DatetoStr(Form7.DateTimePicker1.Date);

  for i:=0 to length(s) do

  if s[i]='.' then

  break;

  edit2.Text:='20'+copy(s,i,length(s)-i+1);

{------------------------------------------------------}

end;

 

procedure TForm7.Button1Click(Sender: TObject); //Процедура поиска договора в базе по номеру

begin

   if ADOTable1.Locate('№_договора',Edit1.Text,[loCaseInsensitive])

   then Panel2.Visible:=true else

   MessageDlg('В базе нет такого договора!',mtInformation,[mbOk],0);

   Form7.DBNavigator2.BtnClick(nblast);

end;

 

procedure TForm7.Button3Click(Sender: TObject);

begin

form8.Edit1.Text:=form7.itog.Text;

form8.showmodal;

form8.Edit2.Clear;

form7.GroupBox1.Visible:=false;

Form8.Dataset1.Locate('¹_äîãîâîðà', Form8.DBEdit1.Text,[loCaseInsensitive]);

Form8.dbedit2.Text:= Form8.dataset1.FieldByName('Sum-ïåíÿ').AsString;

end;

 

procedure TForm7.Button4Click(Sender: TObject);   // Процедура начисления арендной платы и пени

begin

{---------edit8 – формирование даты следующего платежа----------------}

  edit8.text:=DatetoStr(Form7.DateTimePicker1.Date);

  s:=edit8.Text;

  for i:=0 to length(s) do

  if s[i]='.' then

  break;

  s1:='28'+copy(s,i,length(s)-i+1);

  s2:=DateToStr(StrToDate(s1)+4);

  for i:=0 to length(s2) do

  if s2[i]='.' then

  break;

  edit2.Text:='28'+copy(s2,i,length(s2)-i+1);

{--------------------------------------}

 

  form7.Button3.Enabled:=true;

  form7.GroupBox1.Visible:=true;

  edit5.Text:=DatetoStr(Form7.DateTimePicker1.Date);

  Form7.PageControl1.ActivePageIndex:=1;

 

  j:=round(Form7.DateTimePicker1.Date-StrToDate(DBEdit4.Text)); // Разница текущей даты и даты, до кот.   необходимо было сделать платеж, в днях

  Edit3.Text:=IntToStr(j);

 

  if StrToInt(edit3.Text)<-30 then

   begin

     MessageDlg(Сверте дату последнего начисления и текущую дату!!',mtInformation,[mbOk],0);

     itog.Text:='0';

     edit7.text:='0';

      Form7.PageControl1.ActivePageIndex:=0;

   end;

 

  if (StrToInt(edit3.Text)<=0)and(StrToInt(edit3.Text)>-30) then

   penya.Text:='0'

  else

  if (StrToInt(edit3.Text)>0)and((StrToInt(edit3.Text)<=40)) then

   begin

     penya.Text:=floattostr((strtofloat(edit3.Text)*strtofloat(dbmes.Text)*strtofloat(dbprocent.Text))*0.01);

    end;

 

  itog.text:=floattostr((strtofloat(penya.Text)+ strtofloat(dbmes.Text)));

 edit7.text:=form7.DBnachsum.Text;

  if StrToInt(edit3.Text)>40 then

   begin

   Form7.ADOTable1.Edit;

    Form7.ADOTable1.Fields[9].AsBoolean:=true;

  Form7.ADOTable1.Post;

 

     Form12.ADOTable1.Insert;

    Form12.ADOTable1.Fields[0].AsInteger:=StrToInt(Form7.DBEdit1.text);

     Form12.ADOTable1.Fields[1].AsInteger:=StrToInt(Form7.DBEdit2.text);

    Form12.ADOTable1.Fields[2].AsDateTime:=DateTimePicker1.Date;

    Form12.ADOTable1.Fields[3].AsFloat:=StrTofloat(Form7.DBEdit3.text)+StrTofloat(penya.Text);

    Form12.ADOTable1.Fields[4].AsInteger:=StrToInt(Form7.Edit3.text);

    Form12.ADOTable1.Post;

    MessageDlg('Данный арендатор является задолжником, договор с ним расторгнут!',mtInformation,[mbOk],0);

  Form12.show;

   end;

 

   if (form7.DBEdit3.Text='0')and(StrToInt(sumdog)<=StrToInt(sumoplat)) then

     begin

      Form7.ADOTable1.Edit;

      Form7.ADOTable1.Fields[9].AsBoolean:=true;

      Form7.ADOTable1.Post;

      MessageDlg('Данный арендатель все выплатил!!',mtInformation,[mbOk],0);

     end;

end;

 

 

procedure TForm7.Button6Click(Sender: TObject);

begin

Timer1.Enabled:=false;

Button2.Visible:=true;

Button6.Visible:=false;

Form7.DBNavigator2.BtnClick(nbLast);

end;

 

procedure TForm7.Button5Click(Sender: TObject);

begin

    Form7.PageControl1.ActivePageIndex:=0;

    Form7.Panel4.Visible:=false;

    Form7.StaticText1.Visible:=false;

    Form7.DBNavigator2.BtnClick(nblast);

    Form7.Button5.Visible:=false;

end;

 

end.




Информация о работе Автоматизация учета аренды и оплаты по ним